[SQL ] MySQL foreign key怎麼修改

作者: silver0314 (胤衡)   2022-05-24 15:10:43
資料庫名稱:My SQL
資料庫版本:8.0.29
內容/問題描述:
資料庫小白想問
兩個表用foreign key 設定之後要怎麼修改呢?
我原本寫 on delete cascade
後來想了想好像應該改成 set null
查了一下沒有看到相關的說明(還是我的關鍵字不正確= =)
想詢問如果已經設定好foreign key 要怎麼修改
Q1:移除foreign key要怎麼做
Q2:不移除,單純更改成刪除/更新後的作動
alter table `國內廠商資料表`
add foreign key(`聯絡人ID`)
references`國內廠商聯絡人資料表`(`聯絡人ID`) on delete cascade;
alter table `國內廠商資料表`
drop foreign key`聯絡人ID`;
:顯示1091
更:
Q1已解決
找到原因了,因為foreign key沒有被定義名稱會被自動標名稱
用show create TABLE `國內廠商資料表`;找到key被定義的名稱為`國內廠商資料表_ibfk
_1`
alter table `國內廠商資料表`
drop foreign key`國內廠商資料表_ibfk_1`;
成功移除foreign key
於是有了新問題
》Q:那要怎麼直接把foreign key 設定為欄名QQ

Links booklink

Contact Us: admin [ a t ] ucptt.com