это две таблицы
CREATE TABLE Account
(A_ID INT , C_Name VARCHAR(30),Balance INT)
CREATE TABLE History
(A_ID INT, C_Name NVARCHAR(30),New_Balance INT,DB_User NVARCHAR(30),Type_Of_Transaction
NVARCHAR(10),Date1 DATE)
триггер
GO
CREATE TRIGGER CONCUSSION ON Account
AFTER UPDATE
AS
BEGIN
DECLARE @ID INT /* save last record has been inserted */
DECLARE @Current_balance INT
DECLARE @Old_balance INT
DECLARE @Type NVARCHAR(10)
SELECT * INTO #TempTable FROM inserted
SELECT TOP 1 @ID=A_ID FROM #TempTable
INSERT INTO History (A_ID ,C_Name , New_Balance)
SELECT * FROM Account
WHERE A_ID=@ID
/ * копирование всей информации из таблицы счетов в историю * /
UPDATE History
SET DB_User=CURRENT_USER,Date1=GETDATE()
WHERE A_ID=@ID
SELECT * INTO #TempTable1 FROM deleted
SELECT TOP 1 @Old_balance=Balance FROM #TempTable1
/ сохранить старый баланс в @ New_balance /
SELECT TOP 1 @Current_balance=Balance FROM #TempTable
/ для сравнения между старым и текущим балансом, чтобы установить @type для депозита или для снятия /
IF @Current_balance>@Old_balance
SET @Type='Deposit'
IF @Current_balance<@Old_balance
SET @Type='Withdrawal'
UPDATE Top (1) History
SET Type_Of_Transaction=@Type
WHERE New_Balance=@Current_balance
END
INSERT INTO Account (A_ID , C_Name ,Balance ) VALUES (101,'Saleh',10000)
UPDATE Account
SET Balance=8000
WHERE A_ID =101
UPDATE Account
SET Balance=18000
WHERE A_ID =101
UPDATE Account
SET Balance=8000
WHERE A_ID =101
вот в чем проблема