MySQL刪除外鍵問題小結
MySQL:MySQL不能刪除外鍵,抱錯Error on rename of ./ruler/test2child to ./ruler/#sql2-298-92 (errno: 152)
曾經這是MySQL的一個bug,但是現(xiàn)在只是MySQL的一個不友好的地方。
例子如下:
mysql> ALTER TABLE ruler.test2child DROP FOREIGN KEY test; ERROR 1025 : Error on rename of ''./ruler/test2child'' to ''./ruler/#sql2-298-8f'' (errno: 152)
這里并不是不能刪除外鍵,而是使用了錯誤的外鍵名稱,但是MySQL報的錯實在離譜。
正確的錯誤信息要如下查詢才能知道:
mysql> show innodb status; ------------------------ LATEST FOREIGN KEY ERROR ------------------------ 071222 20:48:26 Error in dropping of a foreign key constraint of table "ruler"."test2child", in SQL command ALTER TABLE ruler.test2child DROP FOREIGN KEY test Cannot find a constraint with the given id "test".
另外外鍵的其他操作也有類似情況:
比如外鍵 新建報錯:
Can''t create table ''ruler.#sql-298_92'' (errno: 150) show innodb status; ------------------------ LATEST FOREIGN KEY ERROR ------------------------ 071222 20:18:57 Error in foreign key constraint of table ruler/#sql-298_8d: FOREIGN KEY (test2code) REFERENCES ruler.test2 (test) on delete set null: You have defined a SET NULL condition though some of the columns are defined as NOT NULL.
測試數(shù)據(jù)庫版本為:
5.2.0-falcon-alpha-community-nt
刪除外鍵的做法:
//先刪除外鍵名,再刪外鍵字段(mysql官方提供)
例:
alter table task drop foreign key FK_Reference_7; alter table task drop column `assigned`;
以上所述是小編給大家介紹的MySQL刪除外鍵問題小結,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
mysql設置值timestamp獲取當前時間并自動更新方式
這篇文章主要介紹了mysql設置值timestamp獲取當前時間并自動更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
MySQL8設置自動創(chuàng)建時間和自動更新時間的實現(xiàn)方法
在實際應用中,我們時常會需要用到創(chuàng)建時間和更新時間這兩個字段,下面這篇文章主要給大家介紹了關于MySQL8設置自動創(chuàng)建時間和自動更新時間的實現(xiàn)方法,需要的朋友可以參考下2023-03-03
修改Innodb的數(shù)據(jù)頁大小以優(yōu)化MySQL的方法
這篇文章主要介紹了修改Innodb的數(shù)據(jù)頁大小以優(yōu)化MySQL的方法,Innodb是MySQL下一個頗具人氣的數(shù)據(jù)引擎,需要的朋友可以參考下2015-05-05
mysql 大表批量刪除大量數(shù)據(jù)的實現(xiàn)方法
這篇文章主要介紹了mysql 大表批量刪除大量數(shù)據(jù)的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-02-02
為什么MySQL選擇Repeatable Read作為默認隔離級別
關于MySQL的事務隔離級別,相信很多讀者都不陌生,那么,你知道為什么Oracle選擇RC作為默認級別,而MySQL要選擇RR作為默認的隔離級別嗎2021-07-07

