单元测试题
一、选择题(每题10分,共100分)
1. 当对表进行哪项操作时触发器不会自动执行()。
A.select
B.insert
C.update
D.delete
答案:A
2. 设某数据库在非工作时间(每天8:00以前、18:00以后、周六和周日)不允许授权用户在职工表中插入数据。下列方法中能够实现此需求且最为合理的是()
A.建立存储过程
B.建立后触发型触发器
C.定义内嵌表值函数
D.建立前触发型触发器
答案:D
3. 下列关于MySQL中前触发器的说法,正确的是()。
A.在前触发器执行之后,再执行引发触发器执行的数据操作语句
B.定义前触发器使用的选项是FOR
C.在一个表上只能定义一个前触发器
D.在一个表上针对同一个数据操作只能定义一个前触发器
答案:D
4. 设在MySQL中有如下定义触发器的语句:
CREATE TRIGGER tr_updateStuScore
AFTER UPDATE
ON score
FOR EACH ROW
……
下列关于该触发器作用的说法,正确的是()。
A.在score表上定义了一个由数据更改操作引发的前触发型触发器
B.在score表上定义了一个由数据更改操作引发的后触发型触发器
C.在score表上定义了一个由数据增、删、改操作引发的后触发型触发器
D.在score表上定义了一个由数据增、删、改操作引发的前触发型触发器答案:B
5. 以下对触发器的叙述中,不正确的是()
A.触发器可以传递参数
B.触发器是SQL语句的集合
C.用户不能调用触发器
D.可以通过触发器来强制实现数据的完整性和一致性
答案:A
6. 创建触发器使用哪个命令()
A.CREATE TABLE
B.CREATE TRIGGER
C.CREATE ENGINE
D.CREATE VIEW
答案B
7. 删除触发器使用哪个命令()
A.ALTER
B.DELETE
C.DROP
D.REMOVE
答案:C
8.查看指定数据库中已存在的触发器语句、状态等信息,使用( )
A.ALTER TRIGGERS
B.SELECT TRIGGERS
C.DISPLAY TRIGGERS
D.SHOW TRIGGERS
答案:D
9.表示前触发使用的关键词是()
A.FRONT
B.AFTER
C.AHEAD
D.BEFORE
答案:D
10.下列是数据库对象的有哪些(可多选)()
A. 视图
B. 触发器
C. 索引
D. 存储过程
答案:ABCD