SQL Server触发器,插入缩短版本的字符串

时间:2017-05-09 13:44:30

标签: sql sql-server triggers

我想创建一个触发器,当我在A列中插入一个字符串时,一个较短的版本(最多117个字符)将被插入到B列中,两者都在同一个表中。

如何使用SQL Server 2014执行此操作?

2 个答案:

答案 0 :(得分:5)

在SQL Server 2014中,您不需要触发器,甚至不需要存储数据的第二列。只需使用计算列:

alter table t add b as (left(a, 117))

答案 1 :(得分:0)

不建议使用触发器,但可以使用此

CREATE TRIGGER tx_Shorten
ON [YourTable]
AFTER Update, Insert
AS 
BEGIN 
IF (SELECT [YourColumn2] FROM inserted) <> (SELECT [YourColumn2] FROM 
deleted)  
BEGIN 
UPDATE [YourTable]
SET [YourColumn2] = (SELECT LEFT([YourColumn], 117))
FROM [YourTable]
END 
END