<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] ## **約束** > 說明:在創建表的時候,對表設置一些規則,只有滿足這些規則,才可以插入數據,我們把這些規則叫做約束。 * 常見的約束 > (A)主鍵約束(primary key) > (B)唯一約束(unique) > (C)默認值約束(default) > (D)非空約束(not null) <br /> ### **1. 主鍵約束** > 說明:主鍵約束就是用來標識表中記錄的唯一標識符,避免用戶輸入重復數據, 被主鍵約束所修飾的列,其列值是唯一且非空的,一張表中只能有一個主鍵約束。 #### 1) 創建表時,添加主鍵約束 ``` create table work01( id int(4) primary key, name varchar(20) ); insert into work01 values(101,'tom '); insert into work01 values(101,'to '); ``` #### 2) 復合主鍵(聯合主鍵)---重點 > 說明:使用主鍵約束修飾2列或者多列的組合值 ``` create table work02( id int(4), name varchar(20), age int(3), primary key(id,name) ); ``` #### 3) 修改表時,添加主鍵約束 > 格式: > alter table 表名 add primary key(列名1,列名2,....); * 案例:創建一張表,表名為work03,表中,包含的字段有: id int(4),name ``` varchar(20),sex char(3),age int(3),修改表時,對id列添加主鍵約束 create table work03( id int(4), name varchar(20), sex char(3), age int(3) ); desc work03; alter table work03 add primary key(id); ``` > 練習:創建一張表,表名為work04,包含的字段有: id int ,name varchar(20),passwd varchar(20),修改表時, 對name和passwd添加主鍵約束并驗證 ``` create table work04( id int , name varchar(20), passwd varchar(20) ); alter table work04 add primary key(name,passwd); insert into work04 values(101,'tom ','123456'); insert into work04 values(102,'tom ','666666'); insert into work04 values(103,'toms','666666'); //驗證主鍵的唯一性 insert into work04 values(104,'tom ','123456'); ``` #### 4) 刪除主鍵約束 > 格式: > alter table 表名 drop primary key; * 案例:刪除work04表中的主鍵約束 `alter table work04 drop primary key;` <br /> ### **2. 唯一約束** > 說明:唯一約束就是用來指定一列或者多列的組合值,使其具有唯一性,被唯一約束所修飾的列,列值可以為null, > 一張表中可以有,多個唯一約束。 > (***被唯一約束的字段值不能重復***) #### 1) 創建表時,添加唯一約束 ``` create table work05( id int(4) primary key, name varchar(20) unique, age int(3) unique, address varchar(50) ); insert into work05(id,address) values(1001,'北京'); insert into work05 values(1002,'天蠶土豆絲',23,'上海'); insert into work05 values(1003,'我吃西紅柿',22,'上海'); insert into work05 values(1004,'西紅柿',22,'上海'); select * from work05; ``` > **備注:唯一約束字段值重復,添加不成功** * 練習:創建一張表,表名為work06,表中包含的字段有: id int(4) pk,name varchar(20) uq,age int(3),并驗證唯一性 ``` create table work06( id int(4) primary key, name varchar(20) unique, age int(3) ); insert into work06 values(101,'tom',23); insert into work06(id,age) values(102,25); insert into work06 values(103,'tom',30); ``` #### 2) 修改表時,添加唯一約束 > 格式: > alter table 表名 add unique(列名1,列名2,.....列名n); * 案例:創建一張表,表名為work07,表中包含的字段有:id int(4) pk name varchar(20) address varchar(50), 修改表時,對地址添加唯一約束 ``` create table work07( id int(4) primary key, name varchar(20), address varchar(50) ); alter table work07 add unique(address); ``` * 練習:創建一張表,表名為work08,表中字段有: id int pk,name varchar(20) sex char(3),email varchar(30), 修改表時,對name和sex添加唯一約束 ``` create table work08( id int primary key, name varchar(20), sex char(3), email varchar(30) ); alter table work08 add unique(name,sex); insert into work08 values(101,'tom','男','123456'); insert into work08 values(102,'tom','男','654321'); desc work08; ``` #### 3) 刪除唯一約束 * 格式: `alter table 表名 drop index key_name; ` > (A)查詢keys值語句 `show keys from 表名\G; ` * 案例:刪除work07表中address上的唯一約束 `alter table work07 drop index address;` <br /> ### **3. 默認值約束** > 說明:默認值約束就是,在表中的某列,指定默認值約束,當執行插入操作的時候,如果某列沒有插入列值, 系統會自動將默認值變為列值。 #### 1) 創建表時,添加默認值約束 ``` create table work09( id int(4) primary key, name varchar(20) unique, age int(3) default 18, address varchar(50) ); insert into work09(id,name) values(1001,'西門吹雪'); select * from work09; ``` #### 2) 修改表時,添加默認值約束 > 格式: `alter table 表名 modify 列名 數據類型 default 默認值; ` > 案例:創建一張表,表名為work10,字段有: id int(4) pk name varchar(20) uq,address varchar(50),修改表時, 對address添加默認值約束,默認值為北京 ``` create table work10( id int(4) primary key, name varchar(20) unique, address varchar(50) ); alter table work10 modify address varchar(50) default '北京'; ``` * 練習:修改work09表中,age列上的默認值約束,將默認值修改為20并驗證 ``` alter table work09 modify age int(3) default 20; insert into work09(id,name,address) values(110,'陸小鳳','成都'); select * from work09; ``` #### 3) 刪除默認值約束 > 格式: `alter table 表名 modify 列名 數據類型; ` > 案例:刪除work10表中,address列上的默認值約束 `alter table work10 modify address varchar(50); ` > 練習:刪除work09表中,age列上的默認值約束 `alter table work09 modify age int(3);` <br /> ### **4. 非空約束** > 說明:非空約束就是,對表中的,某列添加非空約束,當值執行插入操作的時候,不可以插入null。 #### 1) 創建表時,添加非空約束 ``` create table work11( id int(4) primary key, name varchar(20) unique, age int(3) default 18, address varchar(50) not null ); insert into work11(id,name) values(111,'葉孤城'); ``` #### 2) 修改表時,添加非空約束 > 格式: `alter table 表名 modify 列名 數據類型 not null; ` 案例:創建一張表,表名為work12,表中包含的字段有: id int(4) pk name `varchar(20),age int(3) default 18, ` * 修改表時,對name列添加非空約束 ``` create table work12( id int(4) primary key, name varchar(20), age int(3) default 18 ); alter table work12 modify name varchar(20) not null; insert into work12(id,age) values(1007,23); ``` > 練習:創建一張表,表名為work13,字段有:id int pk,name varchar(20) uq,email varchar(20),修改表時, 對email列添加非空約束并驗證 ``` create table work13( id int primary key, name varchar(20) unique, email varchar(20) ); alter table work13 modify email varchar(20) not null; ``` > 練習:創建一張表,表名為work13,字段有:id int pk,name varchar(20) uq,email varchar(20),修改表時, * 對email列添加非空約束并驗證 ``` create table work13( id int primary key, name varchar(20) unique, email varchar(20) ); alter table work13 modify email varchar(20) not null; ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看