sql2005 教师表Teacher上定义触发器update_Prof,使其在更新教师职称时不能降低
题目:教师表Teacher上定义触发器update_Prof,使其在更新教师职称时不能降低,但可以破格(如:讲师->教授).(利用deleted表和inserted表的连...
题目:教师表Teacher上定义触发器update_Prof,使其在更新教师职称时不能降低,但可以破格(如:讲师->教授).(利用deleted表和inserted表的连接,判断修改前和修改后职称变化情况,deleted表和inserted表的概念可以查阅相关资料)
create trigger update_prof
on Teacher
for update
as
if update(Prof)
begin
declare @1 nchar(5),@2 nchar(5)
select @1=inserted.prof,@2=deleted.prof
from inserted,deleted
select
case
when @1='教授' and @2='副教授' then '不能降低职称'
when @1='教授' and @2='讲师' then '不能降低职称'
when @1='教授' and @2='助教' then '不能降低职称'
when @1='副教授' and @2='讲师' then '不能降低职称'
when @1='副教授' and @2='助教' then '不能降低职称'
when @1='讲师' and @2='助教' then '不能降低职称'
end
调试出错:消息 102,级别 15,状态 1,过程 update_prof,第 18 行
'end' 附近有语法错误。
PS:本来END前面有else '修改成功',,但加了后好像不改动,只显示成功(个人猜测).有ELSE依然是有错误 展开
create trigger update_prof
on Teacher
for update
as
if update(Prof)
begin
declare @1 nchar(5),@2 nchar(5)
select @1=inserted.prof,@2=deleted.prof
from inserted,deleted
select
case
when @1='教授' and @2='副教授' then '不能降低职称'
when @1='教授' and @2='讲师' then '不能降低职称'
when @1='教授' and @2='助教' then '不能降低职称'
when @1='副教授' and @2='讲师' then '不能降低职称'
when @1='副教授' and @2='助教' then '不能降低职称'
when @1='讲师' and @2='助教' then '不能降低职称'
end
调试出错:消息 102,级别 15,状态 1,过程 update_prof,第 18 行
'end' 附近有语法错误。
PS:本来END前面有else '修改成功',,但加了后好像不改动,只显示成功(个人猜测).有ELSE依然是有错误 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询