MySQL約束
1、非空約束
建表時加:create table szt1(name varchar(20) not null,age int(5));
刪除:alter table szt1 modify name varchar(20);
建表後加:alter table szt1 modify name varchar(20) not null;
2、唯一約束 只能有一個不能重複
建表時加:create table szt1 (name varchar(20) unique,age int(5));
刪除:alter table szt1 drop index name;
建表後加: alter table szt1 add constraint unique(name);
在使用這種約束之前最好把之前列的約束都去掉(演示的時候最好把之前的數據也清除)
給多列增加唯一約束: alter table pers1 add constraint unique(name,age);
3、主鍵(作爲某一行數據的唯一標識(標誌))約束 唯一,非空,一張表只有一個主鍵 常用的主鍵類型是整數或者字符串
建表時加:create table szt1 (name varchar(20) primary key,age int(5) );
演示主鍵列的非空
演示主鍵列的唯一
演示創建一張表兩個主鍵列
刪除: alter table szt1 drop primary key;
建表後加:alter table szt1 add constraint primary key(name); 聯合主鍵:create table pers3 (name varchar(20),age int(5),primary key(name,age));
兩列都不許爲null 兩列不允許同時重複
4、自動增長:一般給數字列加,並且只能給主鍵列加
建表時加:create table szt1 (id int(5) primary key auto_increment,name varchar(20));
刪除:alter table szt1 modify id int(5);
建表後加: alter table szt1 modify id int(5) auto_increment;
設置默認值
create table test8(data1 varchar(10) default 'hehe',data2 int(10) default 123);
5、區分大小寫
create table users1 (name varchar(5) binary primary key,age int(3));
刪除: alter table users1 modify name varchar(5)