设某数据库在非工作时间(每天8:00以前,18:00以后、周六和周日)不允许授权用户在职工表中插入数据库。下列方法中能够实现此需求且最为合理的是()
A. 建立存储过程
B. 建立后触发型触发器
C. 定义内嵌表值函数
D. 建立前触发型触发器
查看答案
设有关系模式:系(系号,系名,系办公电话),教师(教师号,教师名,职称,聘任日期,工资,所在系)。现要定义下列约束:
A. 系号是系关系的主码,教师号是教师关系的主码
B. 职称列的取值只能为“教授”,“副教授”,“讲师”,“助理”和“其他”
C. I 教授的默认工资为10000元,副教授的默认工资为8000元,讲师的默认工资为5000元
D. 每个教师的所在的系号不能为空,且其值必须在系关系中存在
E. 数据库中实现以上约束,需要使用触发器才能实现的是()
F. 仅I 和II
G. 仅III和IV
H. 仅III
I. 仅I 和IV
执行由update语句引发的触发器时,下列关于该触发器临时工作表的说法中,正确的是()
A. 系统会自动产生updated表来存放更改前的数据
B. 系统会自动产生updated表来存放更改后前的数据
C. 系统会自动产生inserted表和deleted表,用inserted表存放更改后的数据,用deleted表存放更改前的数据
D. 系统会自动产生inserted表和deleted表,用inserted表存放更改前的数据,用deleted表存放更改后的数据
设在SQL Server中,设表T(a,b)上建有如下触发器:Create trigger tri_updateon Tfor updateasif exists(select * from inserted where b not between 0 and 100)Rollback设表T中已有数据:(’a01’,90),如果执行语句:Update T set b=100 where a=’a01’则触发器临时工作表及执行完该语句后表T中的数据为()
A. T表:(‘a01’,100)Inserted表(‘a01’,90)Deleted表(‘a01’,100)
B. T表:(‘a01’,90)Inserted表(‘a01’,90)Deleted表(‘a01’,100)
C. T表:(‘a01’,100)Inserted表(‘a01’,100)Deleted表(‘a01’,90)
D. T表:(‘a01’,90)Inserted表(‘a01’,100)Deleted表(‘a01’,90)
下面是在 stsc 数据库的 student 表上创建一个 UPDATE 触发器trig_update,防止用户修改 student 表的总学分。USE stscGO________________ trig_update /*创建 UPDATE 触发器 trig_update*/ON studentAFTER ________AS________________BEGINPRINT '不能修改总学分'________________ /*回滚之前的操作*/END