資料庫技術五(約束)

2021-09-11 01:44:53 字數 2443 閱讀 7083

目錄

約束:對錶中的資料進行限定,保證資料的正確性、有效性和完整性。

約束的分類:

主鍵約束

非空約束

唯一約束

外來鍵約束

非空約束: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...