嗨iam試圖在我的數據庫中作出更新觸發器。 但每次觸發觸發時我都會收到此錯誤。T-SQL更新觸發器幫助
錯誤消息:該行的值(一個或多個)更新或刪除或者不要使行唯一或他們更改多個行(3rows)
和我的繼承人觸發
ALTER TRIGGER [dbo].[x1pk_qp_update]
ON [dbo].[x1pk] FOR UPDATE
AS
BEGIN TRY
DECLARE @UserId int
, @PackareKod int
, @PersSign varchar(10)
SELECT @PackareKod = q_packarekod
, @PersSign = q_perssign
FROM INSERTED
IF @PersSign IS NOT NULL
BEGIN
IF EXISTS (SELECT * FROM [QPMardskog].[dbo].[UserAccount] WHERE [Account] = @PackareKod)
BEGIN
SET @UserId = (SELECT [UserId]
FROM [QPMardskog].[dbo].[UserAccount]
WHERE [Account] = @PackareKod)
UPDATE [QPMardskog].[dbo].[UserAccount]
SET [Active] = 1
WHERE [Account] = @PackareKod
UPDATE [QPMardskog].[dbo].[User]
SET [Active] = 1
WHERE [Id] = @UserId
END
END
END TRY
但我只更新表中的一行,它如何說3行。請指教。
它可以更新超過1條記錄。您從最後這些記錄中選擇@PackareKod和@PersSign。 – garik 2010-03-12 11:22:32