SQL Server - 在模式中触发AFTER INSERT表

问题描述 投票:1回答:1

我有一个存储过程在一组表之后运行,所有表都属于相同的模式[DATA_Countries],然后被删除然后重新插入。

该操作由另一个应用程序执行,该应用程序删除并重新创建目标表,我无法控制该目标表。

由于每次都删除并重新创建表,因此我无法在每个目标表上使用触发器。

有没有办法在每次将表插入特定模式时获取触发器,以返回此类表的名称并启动参数化存储过程?

谢谢!

sql-server triggers database-trigger
1个回答
0
投票

是的,您可以在SQL Server上创建DDL触发器以跟踪DDL更改。例如,如果我想跟踪数据库AdventureWorks上的存储过程中的更改,我可以创建这样的触发器

CREATE TRIGGER td_ProcTrack 
ON AdventureWorks
FOR CREATE_PROCEDURE, ALTER_PROCEDURE, DROP_PROCEDURE
AS
BEGIN

<my code>

END

有关更详细的示例,请参阅此Article

© www.soinside.com 2019 - 2024. All rights reserved.