sql語句格式:
· 新增外來鍵約束:alter table 從表 add constraint 外來鍵(形如:fk_從表_主表) foreign key (從表外來鍵字段) references 主表(主鍵字段);
如果mysql報錯:error code: 1215. cannot add foreign key constraint (foreign keys)
檢查 主從表兩個欄位的屬性是否一致
將member表id鍵改為bigint:alter table member modify column id bigint;
執行時發現如下錯誤:
error 1025 (hy000): error on rename of 『.\test\#sql-c68_10』 to 『.\test\member』 (errno: 150)
原因:
member表的id主鍵欄位是另外一張address的外來鍵,修改主表id欄位型別會導致主表與外來鍵關聯表字段不一致。
解決方法:
找到外來鍵關聯表,找到外鍵名字。
刪除外來鍵約束
修改主表(member)id欄位型別:alter table member modify column id bigint;
修改輔表(address)member_id欄位型別:alter table address modify column member_id bigint;
將刪除的外來鍵補上:alter table address add constraint fk_member_address foreign key (member_id) references member(id);
Mysql新增外來鍵約束
最近學習遇到一條新增外來鍵約束的語句,記錄下來.alter table selection add constraint fk reference 1 foreign key course references course id on delete restrict on update restr...
為mysql資料表新增外來鍵
restrict 只要本 裡面有指向主表的資料,在主表裡面就無法刪除相關記錄。一般來說,就選restrict最安全,當然也根據具體的業務而言了.cascade很cool,但是資料譁的一下就沒了.cascade 如果在foreign key 所指向的那個表裡面刪除一條記錄,那麼在此表裡面的跟那個key...
改變表已新增約束 外來鍵
alter table dbo employee with nocheck add constraint df employee job id 1b0907ce default 1 for job id constraint df employee job lv 1cf15040 default 1...