SQL Server在插入触发器上更改列值 [英] SQL Server change column value on insert trigger
本文介绍了SQL Server在插入触发器上更改列值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在插入触发器中更改列的值?在Oracle中,我可以使用以下代码在INSERT Trigger
中将col1值更改为大写.如何在SQL Server中完成此操作?
How do I change values of a column in an insert trigger ? In Oracle I can use the following code to change the col1 value to upper case in an INSERT Trigger
. How do I do it in SQL Server ?
IF exists (select col1 from inserted where col1 is NOT NULL )
begin
:NEW.col1:= UPPER(:NEW.col1);
end
推荐答案
这里是使用INSTEAD OF触发器的一种方法.
Here is one way using an INSTEAD OF trigger.
CREATE TRIGGER MyTrigger ON MyTable INSTEAD OF INSERT AS
INSERT MyTable(col1, [other columns])
SELECT UPPER(i.col1)
, i.[other columns]
FROM Inserted i
这篇关于SQL Server在插入触发器上更改列值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文