1. 程式人生 > 其它 >Mysql刪除所有外來鍵約束

Mysql刪除所有外來鍵約束

技術標籤:Mysql

問題:

由於外來鍵約束的存在,使得後期的分庫分表非常麻煩,對於沒有用到外來鍵約束限制操作,並且有外來鍵結構的資料庫,刪除所有外來鍵約束很有必要,使資料庫可移植性強,可拆解性強

步驟:

  1. 執行查詢所有外來鍵命令,並且拼接刪除外來鍵的sql
  2. 複製所有sql,並執行

具體sql程式碼

SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' DROP FOREIGN KEY ',CONSTRAINT_NAME,' ;') 
FROM information_schema.TABLE_CONSTRAINTS c 
WHERE
c.TABLE_SCHEMA='庫名' AND c.CONSTRAINT_TYPE='FOREIGN KEY'; # 查詢的結果複製到下方繼續執行 # 例如: ALTER TABLE tjaurjcompany.dsb DROP FOREIGN KEY FK_DSB_RELATIONS_YGB ;

在這裡插入圖片描述
複製如上命令執行即可