我有一个名为 employees
的表有 3 列:FirstName
, LastName
, 和 SSN
.
数据每晚由 .Net 服务输入此表,我不太愿意更新。
我想要一个触发器:
Hey, I see you're trying to insert something in the SSN column... let's HASH that before it goes in.
最佳答案
一种方法是使用 INSTEAD OF TRIGGER:
CREATE TRIGGER dbo.HashSSN
ON dbo.tablename
INSTEAD OF INSERT
AS
BEGIN
SET NOCOUNT ON;
INSERT dbo.tablename(FirstName, LastName, SSN)
SELECT FirstName, LastName, HASHBYTES('SHA1', SSN)
FROM inserted;
END
GO
关于sql-server - 如何在插入前将触发器写入散列值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12043739/