你可以在创建后修改现有的mysql触发器吗?

Cor*_*ein 12 mysql triggers

mysql我可以创建一个触发器,然后显示有关它的信息,如下所示:

mysql> show triggers like 'fooTrigger';
Run Code Online (Sandbox Code Playgroud)

此命令提供的输出看起来非常像select语句,其中一行显示匹配的触发器.是否可以更新它显示给我的行上的列?

例如,一列被命名Statement,它定义了激活触发器时发生的情况.是否可以更改Statement字段,fooTrigger以便触发器执行不同的操作?或者我需要drop并重新create触发?

Joc*_*lyn 17

从MySQL 5.5开始,您必须删除并重新创建触发器.
Statement不删除触发器的情况下无法更新列.

文档:创建TRIGGER DROP TRIGGER

您还可以使用INFORMATION_SCHEMA表访问有关触发器的信息:

SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
Run Code Online (Sandbox Code Playgroud)

但是,由于这些表实际上是视图,因此您无法使用UPDATE它们.
与使用SHOW TRIGGERS相比,它只是访问和操作信息的一种更方便的方式.

文档:INFORMATION_SCHEMA.TRIGGERS