目錄
約束:對錶中的資料進行限定,保證資料的正確性、有效性和完整性。
約束的分類:
主鍵約束
非空約束
唯一約束
外來鍵約束
非空約束:not null,值不能為null
1. 建立表時新增約束
create table stu1(
id int not null,
name varchar(20)
);
2. 建立表完後,新增非空約束
create table stu2(
id int ,
name varchar(20)
);alter table stu2 modify id int not null
3. 刪除id的非空約束
alter table stu2 modify id int is null
唯一約束:unique,值不能重複
1. 建立表時,新增唯一約束
create table stu3(
id int unique ,
name varchar(20)
);
注意mysql中,唯一約束限定的列的值可以有多個null
2. 刪除唯一約束
alter table stu3 drop index id
3. 在建立表後,新增唯一約束
create table stu4(
id int ,
name varchar(20)
);alter table stu4 modify id int unique
主鍵約束:primary key。
1. 注意:
1. 含義:非空且唯一
2. 一張表只能有乙個字段為主鍵
3. 主鍵就是表中記錄的唯一標識
2. 在建立表時,新增主鍵約束
create table stu5(
id int primary key,
name varchar(20)
);
3. 刪除主鍵
alter table stu5 drop primary key
4. 建立完錶後,新增主鍵
create table stu6(
id int ,
name varchar(20)
);alter table stu6 modify id int primary key
5. 自動增長:
1. 概念:如果某一列是數值型別的,使用 auto_increment 可以來完成值得自動增長
2. 在建立表時,新增主鍵約束,並且完成主鍵自增長
create table stu7(
id int primary key auto_increment,
name varchar(20)
);
3. 刪除自動增長
alter table stu7 modify id int
4. 新增自動增長
alter table stu7 modify id int
外來鍵約束:foreign key,讓表於表產生關係,從而保證資料的正確性。
1. 在建立表時,可以新增外來鍵
語法形式:
create table 表名(
....
外來鍵列constraint 外來鍵名稱 foreign key (外來鍵列名稱) references 主表名稱(主表列名稱)
);
2. 刪除外來鍵
alter table 表名 drop foreign key 外來鍵名稱;
3. 建立表之後,新增外來鍵
alter table 表名 add constraint 外來鍵名稱 foreign key (外來鍵欄位名稱)
references 主表名稱(主表列名稱);
4. 級聯操作
1. 新增級聯操作
語法形式:
alter table 表名 add constraint 外來鍵名稱
foreign key (外來鍵欄位名稱) references 主表名稱(主表列名稱)
on update cascade on delete cascade ;
2. 分類:
1. 級聯更新:on update cascade
2. 級聯刪除:on delete cascade
資料庫的五種約束
約束 1 非空約束not null 新增或修改記錄時該列的值不允許為空 2 check約束check sal 0 新增或修改記錄時該列的值需要滿足check設定的條件 3 主鍵約束primary key 新增或修改記錄時該列的值不能與其他記錄的該列值重複 4 唯一鍵約束unique 新增或修改記錄時...
MySQL資料庫(五)外來鍵約束
一 foreign key 的作用和要求 找到my.ini檔案,開啟,找到defult stroage engine innodb,檢視引擎是否是innodb,如下圖 案例 一 建立父類表和子類表,資料型別不一致導致150錯誤 mysql create table sheng id smallint...
資料庫中的五種約束
資料庫中的五種約束 五大約束 1.主鍵約束 primay key coustraint 唯一性,非空性 2.唯一約束 unique counstraint 唯一性,可以空,但只能有乙個 3.檢查約束 check counstraint 對該列資料的範圍 格式的限制 如 年齡 性別等 4.預設約束 d...