向SQL Server数据库中的所有触发器添加新列

时间:2015-06-25 09:41:51

标签: sql-server sql-server-2008 sql-server-2012

我的数据库中有450个表,我已经为所有表引入了一个新列,包括其历史表。

我的问题是我的数据库中有很多触发器。如何在触发器代码中添加新列。

目前,我是通过逐个获取触发器脚本手动添加的。但这是一项繁琐的工作。任何人都可以建议任何有效的方法来完成这个过程。

1 个答案:

答案 0 :(得分:0)

One of easy alternate way is to add one more trigger to each table. You can create dynamic script like:

SELECT 
'CREATE TRIGGER trg_' + name + '_NewFld
ON ' + name + '
AFTER INSERT, UPDATE, DELETE
AS
BEGIN
    --WRITER YOUR LOGIC FOR NEWLY ADDED FIELD
END'
from sys.tables