我有一个名为htmlContent
的列stores HTML Content
表EEmailData
和EEmailDataID
列,该列是此表的unique ID
,或者我可以说{ {1}}
现在我想要做的是primary key of this table.
,它会从此表中获取此主键,并在特定位置的create a trigger
列中插入此EEmailDataID
。
我认为这将通过htmlContent
函数进行。任何人都可以向我推荐一些其他解决方案吗?
答案 0 :(得分:0)
为此,您需要添加id
,以替换Primary key value
例如:<a href="localhost:19763/BitBucket/GUEST/... ?GuestInviteFwd=uArAiAd
并使用以下触发器
CREATE TRIGGER EEmailData_Trigg ON EEmailData
AFTER INSERT
AS
IF EXISTS (SELECT top(1)*
FROM EEmailData p
JOIN inserted AS i
ON p.EEmailDataID = i.EEmailDataID
)
BEGIN
DECLARE @html VARCHAR(MAX),@id INT
SELECT @html=htmlContent ,@id=EEmailData
FROM EEmailData
WHERE EEmailDataID =(SELECT TOP(1) EEmailDataID FROM inserted)
UPDATE EEmailData
SET htmlContent=REPLACE(@html,'uArAiAd',@id)
WHERE EEmailDataID=@id
END
现在,触发器uArAiAd
被EEmailDataID替换
你也可以在没有触发的情况下实现这一点。 插入后只需执行以下操作。
DECLARE @html VARCHAR(MAX),@id INT
--insert statements
SET @id=SCOPE_IDENTITY()
SELECT @html=htmlContent ,@id=EEmailData
FROM EEmailData
WHERE EEmailDataID =@id
UPDATE EEmailData
SET htmlContent=REPLACE(@html,'uArAiAd',@id)
WHERE EEmailDataID=@id