【发布时间】:2017-12-18 12:16:55
【问题描述】:
我有一个存储过程要在一组表(全部属于同一架构 [DATA_Countries])被删除然后重新插入后运行。
该操作由另一个应用程序执行,该应用程序删除并重新创建目标表,我无法控制。
由于每次都会删除并重新创建表,因此我无法在每个目标表上使用触发器。
有没有办法在每次将表插入特定模式时获取触发器,以返回此类表的名称并启动参数化存储过程?
谢谢!
【问题讨论】:
-
您可以创建数据库触发器,是的,它可以在 DDL 更改时触发。触发器将启动
CREATE TRIGGER [YourTriggername] ON DATABASE FOR CREATE_TABLE AS...。看看CREATE TRIGGER (Transact-SQL)。 -
谢谢。已经创建了一个 AFTER 数据库触发器并且它可以工作。关于如何访问正在插入的表的名称/模式的任何想法?
标签: sql-server triggers database-trigger