I have a problem when I create a trigger which is giving me this error:
Msg 512, Level 16, State 1
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression***
The Trigger is :
Create TRIGGER AccountChange
ON Customer
AFTER UPDATE
AS
BEGIN
IF(UPDATE(TotalSales))
BEGIN
DECLARE @TotalSales MONEY,@AccountNumber NVARCHAR(20),
@TotalSalesOld MONEY,@customText1 NVARCHAR(50),
@AccountTypeId int
SET @TotalSales=(SELECT TotalSales FROM INSERTED)
SET @TotalSalesOld=(SELECT TotalSales FROM DELETED)
SET @AccountNumber=(SELECT AccountNumber FROM INSERTED)
SET @AccountTypeId=(SELECT AccountTypeId FROM INSERTED)
IF(@TotalSales BETWEEN 0 AND 5000)
UPDATE Customer SET AccountTypeID=8
WHERE AccountNumber=@AccountNumber
END
END
INSERTEDwill contain all the rows you have updated in theUPDATEthereforeTotalSalescould be thousands of different values