我正在使用SQL Server 2005的觸發器。我有更新後的表的觸發器。聲明變量後,代碼就是這樣。插入問題後的SQl觸發器
if @isconfirmed_before = 0 and @isconfirmed_after = 1
begin
if @invite_userid <> ''
begin
select @points = points from dbo.InvitePoint where code = 'USR' and packageid = @packageid
INSERT INTO InviteCount
([userID]
,[joinMerchantID]
,[packageID]
,[points]
,[joinDate])
VALUES
(@invite_userid
,@merchantid
,@packageid
,@points
,getdate())
end
SET @alpha_numeric=''
SELECT @[email protected]_numeric+CHAR(n) FROM
(
SELECT TOP 8 number AS n FROM master..spt_values
WHERE TYPE='p' and (number between 48 and 57 or number between 65 and 90)
ORDER BY NEWID()
) AS t
update merchant
set reg_code = @alpha_numeric
where merchantid = @merchantid
END
的
update merchant
set reg_code = @alpha_numeric
where merchantid = @merchantid
最後一部分是插入的行變卻故每有更新表的時候這reg_code shoule只能一次插入。我如何做到這一點。請幫助我,提前謝謝!
給出觸發器的完整代碼 –