create trigger 月工資變動
after update on 考勤
referencing
oldrow as oldtuple,
newrow as newtuple
for each row
begin
if(oldtuple.一月份缺勤扣薪 != newtuple.一月份缺勤扣薪)
then
update 員工月工資 set 一月份工資=一月份工資-newtuple.一月份扣薪+oldtuple.一月份扣薪
where oldtuple.員工編號=員工月工資.員工編號;
end if;
end;
這是一個關於工資管理數據庫的觸發器,考勤是一個表,當考勤表中一月份缺勤扣薪改動時,員工工資表中對應的一月份工資變化,在SQL server中出現錯誤,請問錯誤在哪?
你這寫法是oracle的吧
create TRIGGER 月工資變動
on 考勤
after update
as
begin
declare @oldName varchar(20), @newName varchar(20),@ygbh varchar(20);
select @oldName = 一月份缺勤扣薪,@ygbh=員工編號 from deleted;
select @newName = 一月份缺勤扣薪 from inserted;
if(@oldName != @newName)
begin
update 員工月工資 set 一月份工資=一月份工資-@newName+@oldName
where 員工月工資.員工編號=@ygbh;
end;
end;