* 分類:
1. 主鍵約束:primary key
2. 非空約束:not null
3. 唯一約束:unique
4. 外來鍵約束:foreign key
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);
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;
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;
1. 概念:如果某一列是數值型別的,使用 auto_increment 可以來完成值得自動增長
2. 在建立表時,新增主鍵約束,並且完成主鍵自增長
create table stu(
id int primary key auto_increment,-- 給id新增主鍵約束
name varchar(20));
3. 刪除自動增長
alter table stu modify id int;
4. 新增自動增長
alter table stu modify id int auto_increment;
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
mysql 學習筆記06
環境 linux系統 1.source的使用 作用 用於匯入sql檔案 注意點 cd desktop 目標目錄進入你需要匯入sql檔案的目錄 資料夾 mysql uroot p在此目錄下進入mysql create table 表名 欄位.建立需要匯入sql檔案對應的表 source mm.sql執...
MySQL學習筆記 約束
1.約束是在表上強制執行的資料檢驗規則,約束主要用於保證資料庫的完整性。2.當表中資料有相互依賴性時,可以保護相關的資料不被刪除。3.大部分資料庫支援下面五類完整性約束 not null非空 unique key唯一值 primary key主鍵 foreign key外來鍵 check檢查 4.約...
學習筆記 MySQL 約束
根據作用範圍 約束1.非空約束 2.唯一約束 建立表並指定使用者名稱和密碼組合不能重複 利用別名 alter table user drop index uk name pwd 1 3.主鍵約束 4.外來鍵約束 建立主表 create table dept dept id int auto incr...