如果要在INSTEAD OF UPDATE触发器中强制执行业务规则,如果违反规则则回滚事务,则每当将新列添加到表中时都必须不断维护该触发器,并包括新添加的更新语句中的列:
UPDATE T
SET A = INSERTED.A,
B = INSERTED.B,
NewColumn = INSERTED.NewColumn
FROM MyTable T
INNER JOIN INSERTED ON T.id = INSERTED.id;
是否存在一些“句法糖”,可以按照以下方式进行操作:
UPDATE T
SET T.* = INSERTED.* -- <<==
FROM MyTable T
INNER JOIN INSERTED ON T.id = INSERTED.id;
这样不需要进行维护吗?