我需要在另一个mysql数据库中重新创建一个触发器 - 是否有一种简单的方法可以导出单个触发器?
答案 0 :(得分:7)
你想要的是转储你的数据库的单个触发器。
您可以从this文章和documentation获取灵感。
例如,此命令仅导出存储过程和触发器:
mysqldump --routines --no-create-info --no-data --no-create-db --skip-opt <database> > outputfile.sql
但是,我认为你不能转储一个触发器。因为它只有一个,也许更容易重新创建另一个dabatase。
答案 1 :(得分:2)
如果您只想要原始CREATE TRIGGER语句的语法,SHOW CREATE TRIGGER应该会帮助您。
答案 2 :(得分:1)
您可以使用此查询直接从MySQL中获取触发器定义:
SELECT ACTION_STATEMENT
FROM INFORMATION_SCHEMA.TRIGGERS
WHERE TRIGGER_SCHEMA = 'mydbname'
AND TRIGGER_NAME = 'mytable_BEFORE_INSERT';