* 概念: 對錶中的資料進行限定,保證資料的正確性、有效性和完整性。
* 分類:
1. 主鍵約束:primary
key2. 非空約束:not
null
3. 唯一約束:unique
4. 外來鍵約束:foreign
key* 非空約束:not
null,值不能為null
1. 建立表時新增約束
create
table stu(
id int
, name varchar(20
)not
null
-- name為非空);
2. 建立表完後,新增非空約束
alter
table stu modify name varchar(20
)not
null
;3. 刪除name的非空約束
alter
table stu modify name varchar(20
);* 唯一約束:unique,值不能重複
1. 建立表時,新增唯一約束
create
table stu(
id int
, phone_number varchar(20
)unique
-- 新增了唯一約束);
* 注意mysql中,唯一約束限定的列的值可以有多個null
2. 刪除唯一約束
alter
table stu drop
index phone_number;
3. 在建立表後,新增唯一約束
alter
table stu modify phone_number varchar(20
)unique
;* 主鍵約束:primary
key。
1. 注意:
1. 含義:非空且唯一
2. 一張表只能有乙個字段為主鍵
3. 主鍵就是表中記錄的唯一標識
2. 在建立表時,新增主鍵約束
create
table stu(
id int
primary
key,
-- 給id新增主鍵約束
name varchar(20
));3. 刪除主鍵
-- 錯誤 alter table stu modify id int ;
alter
table stu drop
primary
key;
4. 建立完錶後,新增主鍵
alter
table stu modify id int
primary
key;
5. 自動增長:
1. 概念:如果某一列是數值型別的,使用 auto_increment 可以來完成值得自動增長
2. 在建立表時,新增主鍵約束,並且完成主鍵自增長
create
table stu(
id int
primary
keyauto_increment
,-- 給id新增主鍵約束
name varchar(20
));3. 刪除自動增長
alter
table stu modify id int
;4. 新增自動增長
alter
table stu modify id int
auto_increment
;* 外來鍵約束: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 主表名稱(主表列名稱)
onupdate
cascade
ondelete
cascade
;2. 分類:
1. 級聯更新:on
update
cascade
2. 級聯刪除:on
delete
cascade
資料庫 總結4 第5節 資料庫表的CRUD操作
2.操作表 1.c create 建立 1.語法 create table 表名 列名1 資料型別1 列名2 資料型別2,列名n 資料型別n 注意 最後一列,不需要加逗號 資料庫型別 1.int 整數型別 age int,2.double 小數型別 score double 5 2 一共保留5位,小...
資料庫 表約束
非空且唯一 方式一 create table userid number,constraint pk user primary key userid username varchar2 10 方式二 create table userid number primary key,username va...
資料庫表約束
sql check約束 check約束屬性列內容的取值範圍。如果對單列進行check約束則只會對單列的取值有效。如果對錶進行check約束則對整張表的所有欄位都進行限制。eg 在建立persons表示為id p列建立check約束。此約束的約束範圍為 id p列的取值範圍不得小於0,要是大於0的整數...