我知道这个线程:Comparing Image Data Types In SQL但它没有帮助
我正在尝试在 T-SQL (SQL Server 2008) 中编写一个触发器,该触发器将检查文章的图像是否已更改并在某个特殊表中报告它。数据库使用Image
数据类型,我无权更改它。
我试过了:
ALTER TRIGGER PhotoUPDATE
ON ARTICLE
FOR UPDATE
AS
DECLARE @ID numeric (18,0),@PHOTO_NEW image,@PHOTO_OLD image
SET @ID = (SELECT ID FROM inserted)
SET @PHOTO_NEW = (SELECT PHOTO FROM inserted)
SET @PHOTO_OLD = (SELECT PHOTO FROM deleted)
IF (@PHOTO_NEW<>@PHOTO_OLD)
BEGIN
INSERT PhotoCHANGED (ID,DATE)
VALUES(@ID,GETDATE())
END
GO
我得到错误:
text、ntext 和 image 数据类型对局部变量无效。
当我尝试不使用变量时:
IF ((SELECT PHOTO FROM inserted)<>(SELECT PHOTO FROM deleted))
我有:
不能在 'inserted' 和 'deleted' 表中使用 text、ntext 或 image 列。
我还能尝试什么?