问题 填空题

在SQL Server 2000中,设有教师表(教师号,姓名,所在部门号,职称)和部门表(部门号,部门名,高级职称人数)。请编写满足下列要求的后触发型触发器(设触发器名字为tri_zc)。

每当在教师表中插入一名具有高级职称(“教授”或“副教授”)的教师时,或者将非高级职称教师的职称更改为高级职称时,均修改部门表中相应部门的高级职称人数。(假设一次操作只插入或更改一名教师的职称)

答案

参考答案:

CREATE TRIGGER tric_zc

  ON 教师表

  AFTER INSERT,UPDATE

  AS

  BEGIN

  DECLARE @zc varchar(10),@dept varchar(30)

  SET @zc =(SELECT 职称 FROM inserted)

  SET @dept =(SELECT 所在部门号 FROM inserted)

  IF @zc=‘教授’ OR ‘副教授’

  UPDATE 部门表

  SET 高级职称人数=高级职称人数+1

  WHERE 部门号=@dept

  END

单项选择题
填空题