如何在使用触发器插入记录后添加校验和值?

时间:2016-12-05 18:32:29

标签: sql sql-server-2008 checksum

我正在使用SQL Server 2008.我有一个名为document的表,其文件内容为image数据类型。每当向该表添加新记录时,我想为相应的文件内容编写trigger以创建checksum,并且新插入的行的文档表中的checksum列应该更新

我目前有这样的触发器:

CREATE TRIGGER AddCheckSum 
ON Document
AFTER INSERT
AS  
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    update Document set checksum =  cast(HASHBYTES('MD5', convert(varbinary,i.Content)) As varbinary) FROM inserted i

END

但是我收到一条错误消息,说明

  

Msg 311,Level 16,State 1,Procedure AddCheckSum,Line 21无法使用   插入'中的text,ntext或image列并且'删除'表。

0 个答案:

没有答案