33 mysql約束的增刪

2022-02-20 14:09:06 字數 741 閱讀 5930

使用show create table 表名 檢視對應的約束名。

注意:如果要新增約束名則需要新增add constraint的形式

新增非空約束

alter table 表名 modify 欄位名 型別 not null;

刪除非空約束

1)alter table 表名 modify 欄位名 型別;

新增唯一約束

alter table 表名 add unique(欄位名不加引號);

刪除唯一約束

alter table 表名 drop index 欄位名;

新增主鍵約束

alter table 表名 add primary key(欄位名不加引號);

刪除主鍵約束

alter table 表名 drop primary key;

新增外來鍵約束

alter tabl 表名 add foreign key(欄位名不加引號) references 外表名不加引號(外來鍵字段不加引號);

如:alter table student add foreign key(cid) references clazz(cid);

帶約束名:alter table student add constraint fk_student_cid foreign key(cid) references clazz(cid);

刪除外來鍵約束

alter table 表名 drop foreign key 約束名;

3 3 mysql 髒讀,幻讀,重複讀

一 基本概念 1 髒讀 事務a修改了某條資料,然後事務b讀取了事務a修改的該條資料,然後事務a由於某些原因,事務a回滾了,這樣事務b讀到的資料就和回滾的資料不同了,這時事務b讀取的資料就是髒資料。乙個事務讀取了另乙個事務未提交的資料。2 幻讀 事務a按一定條件讀取了該錶的一些資料,然後事務b向該錶插...

mysql 列,約束的增刪改

重新命名表名 alter table 原表名 rename to 新錶名 新增字段 alter table 表名 add 欄位名 資料型別 primary key 新增欄位到表的第一行 alter table 表名 add 欄位名 資料型別 first 新增欄位到指定欄位後 alter table ...

MySQL約束and增刪查改

表的約束 定義的乙個欄位的時候,欄位名稱 欄位型別 表的約束是在約束插入資料的時候,每乙個欄位的條件 1 空屬性 null 可以為null not null 不可以為null 表示當前字段值是否可以為null 2 預設值 給定義預設屬性的字段插入資料的時候,當沒有插入資料的時候,自動加入定義的預設值...