數據約束 ——對用戶操作表的數據進行約束 1、預設值 ——當用戶對使用預設值的欄位不插入值的時候,就使用預設值 1)對預設值欄位插入null是可以的。 2)對預設值欄位可以插入非null 【例如:address varchar(20) default '廣州天河' ——預設值】 2、非空 ——限制字 ...
數據約束
——對用戶操作表的數據進行約束
1、預設值
——當用戶對使用預設值的欄位不插入值的時候,就使用預設值
1)對預設值欄位插入null是可以的。
2)對預設值欄位可以插入非null
【例如:address varchar(20) default '廣州天河' ——預設值】
2、非空
——限制欄位必須賦值
1)非空字元必須賦值
2)非空字元不能賦null
【例如:gender varchar(2) not null ——非空】
3、唯一
——對欄位的值不能重覆
1)唯一欄位可以插入null
2)唯一欄位可以插入多個null
【例如:id int inique ——唯一】
4、主鍵
——唯一+非空
1)通常情況下,每張表都會設置一個主鍵欄位。用於標記表中的每條記錄的唯一性。
2)建議不要選擇表的包含業務含義的欄位作為主鍵,建議給每張表獨立設計一個非業務含義的id欄位。
【例如:id int primary key —— 主鍵】
5、自增長
——對應值自動增長
【例如:id int(4) zerofill primary key auto_increment ——自增長,從0開始 zerofill零填充】
6、外鍵
——約束兩種表的數據
當出現兩種表的情況時為了解決數據冗餘高問題會獨立出一張表
例如: 員工表 和 部門表
問題出現:在插入員工表數據的時候,員工表的部門ID欄位可以隨便插入!!!!!
解決問題:使用外鍵約束——約束插入員工表的部門ID欄位值(在員工表的部門ID欄位添加一個外鍵約束!!!)
1)被約束的表稱為副表,約束別人的表稱為主表,外鍵設置在副表上的!!!
2)主表的參考欄位通用為主鍵!
3)添加數據: 先添加主表,再添加副表
4)修改數據: 先修改副表,再修改主表
5)刪除數據: 先刪除副表,再刪除主表
【好事主先來,壞事副表當】