[英]Dropping a table in MySQL (3.23.58) with a special character in the tablename
是的,這是一個舊的數據庫(我們正在遷移過程中)。 不知何故,phpMyAdmin讓用戶創建一個帶有'的表。
name:type_save'
但是,我現在似乎無法放棄那張桌子。 我從命令行試過這個:
mysql> drop table "type_save\'";
ERROR 1064: You have an error in your SQL syntax near '"type_save\'"' at line 1
mysql> drop table "type_save'";
ERROR 1064: You have an error in your SQL syntax near '"type_save'"' at line 1
mysql> drop table `type_save'`;
'>
你怎么逃脫這個?
謝謝...
嘗試這個:
mysql> drop table `type_save'`;
注意:“mysql>”只是命令提示符。
字符是`( 反向撇號或左單引號)。
它是MySQL 3.x,所以它很可能是MyISAM(甚至是ISAM)。 由於刪除表的正常方法不起作用(因為你說它崩潰服務器),如果它是MyISAM / ISAM,只需直接從文件系統中刪除相關的.MYI
, .MYD
和.frm
文件,或者移動如果你出於某種原因需要保存它們,別的地方。 然后做一個沖洗表。 你甚至不需要關閉服務器(至少在Unix上,在Windows上文件可能正在使用,Windows可能不允許你刪除它。刷新表可能有幫助)。
如果它的InnoDB只有ISAM或MyISAM,請不要這樣做。
如果它的InnoDB,我擔心你將來可能會有轉儲/重裝。
當然還有備份。 始終有備份。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.