唯一約束——unique
ⅰ 列約束:每個欄位都不能出現重複的資料
drop
table
ifexists studentinfo;
create
table studentinfo(
studentid bigint
unique
,//表約束
name varchar
(255
)unique
//表約束
);
建表成功 :
① 新增 相同id 不同姓名 的學生記錄 ↓↓↓
insert
into studentinfo values
(202001
,'aimer'
),(202001
,'majiko'
);
新增失敗:
error 1062 (23000): duplicate entry '202001' for key 'studentinfo.stuentid'
② 新增 不同id 相同姓名 的學生記錄 ↓↓↓
insert
into studentinfo values
(202001
,'amier'
),(202002
,'aimer'
);
新增失敗:
error 1062 (23000): duplicate entry 'aimer' for key 'studentinfo.name'
③ 新增 不同id 不同姓名 的學生記錄 ↓↓↓
insert
into studentinfo values
(202001
,'amier'
),(202002
,'majiko'
);
新增成功 ↓↓↓
ⅱ 表約束:多個字段聯合約束,即被約束多個字段不能全部重複
drop
table
ifexists studentinfo;
create
table studentinfo(
stuentid bigint
unique
, name varchar
(255
)unique,
unique
(studentid,name)
//表約束
);
① 新增 不同id 相同姓名 的學生記錄 ↓↓↓
insert
into studentinfo values
(202001
,'amier'
),(202002
,'aimer'
);
新增成功 ↓↓↓
② 新增 相同id 相同姓名 的學生記錄 ↓↓↓
insert
into studentinfo values
(202001
,'amier'
),(202001
,'aimer'
);
新增失敗:
error 1062 (23000): duplicate entry '202001-aimer' for key 'studentinfo.studentid'
SQL UNIQUE 約束 關鍵字解析
語法 create table persons id p int not null,lastname varchar 255 not null,firstname varchar 255 address varchar 255 city varchar 255 unique id p create ...
Oracle之表的約束
1.建表的同時建立約束 create table student 1 stuid number 32 primary key,主鍵 stuname varchar2 16 unique 唯一約束 age varchar2 4 notnull 非空約束 gender varchar2 8 check ...
MySQL中的約束,列級約束,表級約束
總結了一些課上的筆記和 可以執行看看 約束的作用 一種限制,用於限制表中的資料,為了保證表中的資料的準確和可靠性。約束的分類 1.not null 非空,用於保證該字段的值不能為null 2.default 預設值,用於保證該字段在不設定具體的內容時,有乙個預設值。即開始存資料的時候不不傳也會有乙個...