我对DROP TRIGGER的工作原理有疑问。
我使用此命令删除触发器:
DROP TRIGGER IF EXISTS `database`.`mytrigger`;
但我的问题是,你可以通过表名来删除触发器吗?例如:
DROP TRIGGER IF EXISTS `table`.`mytrigger`;
我尝试了但是当我设置tablename时,触发器不会被删除。
谢谢!
答案 0 :(得分:8)
不,因为它没有唯一标识触发器,并且最终看起来就像你试图说你有一个名为table
的数据库。如果您只想取消数据库名称,则无需将其替换为任何内容:
DROP TRIGGER IF EXISTS `mytrigger`;
答案 1 :(得分:5)
表级别不存在触发器。它们是仅与表关联的数据库级对象。没有办法通过相关表删除它们。