现有如下两个关系模式: Employees(Eid,Name,DeptNO) Departments(DeptNO,DeptName,TotalNumber) Employees关系模式描述了职工编号、姓名和所在部门编号;Departments关系模式描述

admin2013-03-12  35

问题 现有如下两个关系模式:
Employees(Eid,Name,DeptNO)
Departments(DeptNO,DeptName,TotalNumber)
Employees关系模式描述了职工编号、姓名和所在部门编号;Departments关系模式描述了
部门编号、名称和职工总人数。
请按SQL Server所采用的’rransact—SQL语法格式编写实现具有如下功能的后触发型触
发器:每当在Employees表中插入一行数据时,相应部门的职工总人数就加1。

选项

答案Create trigger sql_tri On employees for insert a8 declare eid varchar(11) deekare name varehoxf20) declare deptno varehar(11) decl8re fly CUrsoOrfor seleet* from inserted open yJy fetch next from yJy intoeid,name,deptno while,feteh_status=0 begin update departments set to’number=totalnumber+1 where deptno=deptno fetch next from yJy intoeid,name,deptno end close yJy deallocate yJy

解析 此题考查了后触发型触发器的Transact_SQL语句。其语法格式为:
CREATE TRIGGER触发器名称
ON I表名I视图名I
[WITH ENCtlYPTION]
AS
SQL语句
AFTER和FOR,指定触发器只有在引发的SQL语句中指定的操作都已成功执行,并且所有的约束检查也成功完成后.才执行此触发器。即后触发型触发器。
转载请注明原文地址:https://kaotiyun.com/show/LJAZ777K
0

最新回复(0)