触发器的使用.sql

来自「关于数据库的 资料」· SQL 代码 · 共 64 行

SQL
64
字号
select * from vote


create trigger update_vote
on vote
instead of update
as
if  update(vote) 
begin
  update vote
  set vote=vote+50
  where sno='95001'
end


update vote
set vote=vote+1
where sno='95001'


select * from deptment

select * from employee

create trigger emp_title
on employee
instead of update
as
if update(title)
begin
  
   if (select inserted.title from inserted)='经理'
    begin
      declare @dept varchar(20),@name varchar(20)
      set @dept=(select deleted.deptID from deleted)
      set @name=(select deleted.EmpName from deleted)
      update employee
      set title='职员'
      where deptID=@dept and title='经理'

      update employee
      set title='经理'
      where EmpID=(select deleted.empID from deleted)

      update deptment
      set  deptmanger=@name
      where deptID=@dept
    end
  else
     begin
        update employee
        set title=(select inserted.title from inserted)
        where empID=(select deleted.empID from deleted)
    end
end

select * from employee  
select * from deptment

update employee
set title='经理'
where empID='00001'

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?