約束
1.約束資料的完整性和一致性;
2.約束分為表級約束(單個表)和列級約束(多表之間的約束)。
3.約束的型別:
not null;非空約束
default;預設約束
primary key;主鍵約束
unique key;唯一約束
foreign key;外來鍵約束
4.自動編號,必須與主鍵組合使用。預設情況下起始值為1,不斷遞增。auto_inscrment
5.主鍵約束,每張表只能有乙個主鍵,主鍵保證記錄的唯一性,主鍵為not null。
在auto_inscrment後加primary key
create table tab_blue(id int unsighned auto_increment primary key,username varchar(30));
6.唯一約束:unique key
唯一約束保證記錄的唯一性,一張表可以存在多個唯一約束,且可以為null。
唯一約束的意義在於當需要在表中的值是唯一不能重複的時候,需要將該序列的值設定為唯一性約束。
如學號的唯一性,在學號序列中設定唯一性約束,當出現相同學號的時候就會報錯。
7.預設約束
當插入記錄,沒有明確為字段賦值,則自動賦予預設值。default
8.外界約束
保持資料一致性,完整性。實現一對一或一對多關係。
父表和子表必須使用相同的儲存引擎,而且禁止使用零時列表。
資料表的儲存引擎只能是innodb。
外來鍵列和參照列必須具有相似的資料型別。其中數字的長度或是否有符號位必須相同;而字元的長度可以不同。
外來鍵列和參照列必須建立索引。如果外來鍵列不存在索引的話,mysql將自動建立索引。
編輯資料表的預設的儲存引擎
cascode:從父表刪除或刪除且自動刪除或更新子表中匹配的行;
set null:從父表刪除或更新行,並設定子表的外來鍵列為null,如果使用該選項,必須保證子列表沒有指定not null.
restrict:拒絕父表的刪除或更新操作。
no action:與restrict相同。
以上方式為物理外來鍵約束。
mysql事務四個特性 事務的四個特性
事務的四個特性 1.原子性 atomicity 1.1什麼是原子性 一般來說,原子是指不能分解成小部分的東西。這個詞在計算的不同分支中意味著相似但又微妙不同的東西。例如,在多執行緒程式設計中,如果乙個執行緒執行乙個原子操作,這意味著另乙個執行緒無法看到該操作的一半結果。系統只能處於操作之前或操作之後...
mysql命令約束 mysql命令 四 約束
約束 約束是為了保證資料的完整性 約束分為表級約束和列級約束 約束型別包括 not null 非空約束 primary key 主鍵約束 unique key 唯一約束 default 預設約束 foreign key 外來鍵約束 外來鍵約束 保持資料的完整性,一致性 實現一對一或者一對多的關係 要...
mysql的事務四個特性以及事務的四個隔離級別
分別是原子性 一致性 隔離性 永續性。原子性是指事務包含的所有操作要麼全部成功,要麼全部失敗回滾,因此事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能對資料庫有任何影響。一致性是指事務必須使資料庫從乙個一致性狀態變換到另乙個一致性狀態,也就是說乙個事務執行之前和執行之後都必須處於一致性...