问题
问答题
在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