我嘗試從mysql中的表中刪除,但它不允許我。 我運行:在MySql中刪除
delete from mytable where sourceid=2;
,我也得到:
ERROR 1146 (42S02): Table 'mydatabase.history_mytable' doesn't exist
這裏有什麼問題?我認爲應該有一個選項來配置mysql爲了不檢查這個歷史表。
我嘗試從mysql中的表中刪除,但它不允許我。 我運行:在MySql中刪除
delete from mytable where sourceid=2;
,我也得到:
ERROR 1146 (42S02): Table 'mydatabase.history_mytable' doesn't exist
這裏有什麼問題?我認爲應該有一個選項來配置mysql爲了不檢查這個歷史表。
運行以下命令:
Show triggers like "%mytable%"
來源:http://dev.mysql.com/doc/refman/5.0/en/show-triggers.html
然後,如果一些觸發存在,
Drop trigger if exists mytable.[trigger_name]
來源:http://dev.mysql.com/doc/refman/5.0/en/drop-trigger.html
,如果你不使用觸發。
謝謝!這是一個觸發器的定義。 – panagdu
不客氣。 –
運行命令
explain delete from ...
然後你會看到數據庫做什麼。
聽起來就像刪除時有一個觸發器在運行。你將不得不調查'mydatabase'數據庫模式來弄清楚發生了什麼。 –
或者,如果您從某種框架運行它,則可能會定義一個表前綴。 –