1
由於編碼不良,當任何用戶試圖從Joomla後端刪除聯繫人類別(SQL 5.5)時,我們的網站會發生心臟病。它不是將其刪除,而是將「已發佈」列更新爲-2(其中1已發佈,-1未發佈)。無法找到導致此問題的原因,我們幾乎立即轉移到試圖創建觸發器來完全刪除該類別。更新將列設置爲特定值時刪除行
CREATE TRIGGER `PermaDelete`
AFTER UPDATE
ON `nac_categories`
FOR EACH ROW
DELETE FROM nac_categories WHERE (NEW.published = -2);
我收到的錯誤是
Error
Can't update table 'nac_categories' in stored function/trigger because it is already used by statement which invoked this stored function/trigger. SQL=UPDATE `nac_categories` SET published = -2 WHERE (lft > 0 AND rgt < 0) OR id = 36
基本上,我只是想刪除的類別發佈更新爲-2
SQL server或mysql? – Kason
你的代碼就像mysql語法。 – Kason
如果你做了'DELETE FROM NEW WHERE(NEW.published = -2);' –