0
У меня есть таблица INVENTORY
SQL триггера расчет между таблицей столбца
Create table INVENTORY(){
INVENID int indentity, -- inventory ID
PRODUCTID varchar(10), --product id
QUANTUM int, -- quantum
QUANTUMINPUT int, -- quantum input
QUANTUMOUTPUT int, -- quantum output
}
я создал триггер:
Create trigger trig_cal
on INVENTORY
after insert,update
as
if(UPDATE(QUANTUMINPUT))
begin
UPDATE INVENTORY set QUANTUM = QUANTUM + QUANTUMINPUT
end
else if(UPDATE(QUANTUMOUTPUT))
begin
UPDATE INVENTORY set QUANTUM = QUANTUM - QUANTUMOUTPUT
end
Я попытался вставить Insert into INVENTORY(PRODUCTID,QUANTUM) values('P01',100)
затем UPDATE INVENTORY set QUANTUMOUTPUT = 1 where PRODUCTID = 'P01'
он вернется QUANTUM
= 90. Это неправильно однако, когда я обновляю QUANTUMOUTPUT
или QUANTUMINPUT
, расчет неправильно
Каков ваш ожидаемый результат. Пожалуйста, поместите некоторые данные образца. – StackUser
благодарит за вашу помощь! –
Я сделал несколько изменений, пожалуйста, проверьте новый код. – StackUser