我有一個關於DROP TRIGGER如何工作的問題。DROP TRIGGER如何在mysql中工作?
我用這個命令刪除觸發器:
DROP TRIGGER IF EXISTS `database`.`mytrigger`;
但我qquestion是,U可以刪除了觸發器與表名選擇呢?例如:
DROP TRIGGER IF EXISTS `table`.`mytrigger`;
我試過了,但是當我設置tablename時觸發器沒有被刪除。
謝謝!
我有一個關於DROP TRIGGER如何工作的問題。DROP TRIGGER如何在mysql中工作?
我用這個命令刪除觸發器:
DROP TRIGGER IF EXISTS `database`.`mytrigger`;
但我qquestion是,U可以刪除了觸發器與表名選擇呢?例如:
DROP TRIGGER IF EXISTS `table`.`mytrigger`;
我試過了,但是當我設置tablename時觸發器沒有被刪除。
謝謝!
不,因爲那不能唯一地標識一個觸發器,並且最終看起來好像你試圖說你有一個叫做table
的數據庫。如果您只是想放棄數據庫名稱,則不需要用任何東西替換它:
DROP TRIGGER IF EXISTS `mytrigger`;
觸發器在表級別不存在。它們是僅與表關聯的數據庫級對象。沒有辦法通過相關表格刪除它們。
那麼,如果Im自動在每個表上創建一個觸發器來保存一行的更新日期(例如updated_date_trigger),我還應該添加表的名字(mytable_updated_date_trigger)? –
我當然似乎是一個合理的命名方案,以在觸發器的名稱中包含相關的表名。 –
好的,謝謝你的幫助!由你決定 –
那麼,如果我在每個表上自動創建一個觸發器來保存一行的更新日期(例如updated_date_trigger),我還應該添加表(mytable_updated_date_trigger)的名字? –
是的。 SQL將大多數對象名稱(包括觸發器和鍵)包括到數據庫中,因此一個合理的命名方案應該包括它們所屬表的名稱。 (只有我能想到的就是列。) – duskwuff
感謝您的幫助!由你決定 –