数据库对象、安全管理(总分:28.00,做题时间:90分钟)一、单项选择题(总题数:23,分数:23.00)1.修改触发器的SQL语句为______。
(分数:1.00)A.ALTER √B.CREATEC.UPDATED.MODIFY解析:2.在Transact-SQL语句中,用于拒绝权限的语句为______。
(分数:1.00)A.GRANTB.BACKC.REVOKED.DENY √解析:3.以下关于标量函数的定义叙述错误的是______。
(分数:1.00)A.标量函数是返回单个数据值的函数B.同存储过程一样,函数的参数也可以有默认值C.如果函数的参数有默认值,则在调用该函数时必须指定“default”关键字D.标量函数的返回值类型可以是大文本、图像等类型√解析:4.默认情况下,新建立的数据库______个用户。
(分数:1.00)A.0B.1 √C.2D.3解析:5.存储过程是存储在数据库中的代码,具有很多优点。
下列陈述中不属于存储过程优点的是______。
(分数:1.00)A.可通过预编译机制提高数据操作的性能B.可方便地按用户视图表达数据√C.可减少客户端和服务器端的网络流量D.可实现一定的安全控制解析:6.下面关于存储过程的描述中,不正确的是______。
(分数:1.00)A.存储过程实际上是一组T-SQL语句B.存储过程独立于数据库而存在√C.存储过程可以完成某一特定的业务逻辑D.存储过程预先被编译存放在服务器的系统表中解析:7.修改存储过程的SQL语句为______。
(分数:1.00)A.ALTER √B.CREATEC.UPDATED.MODIFY解析:8.在SQL Server 2000中,如果希望用户u1在DB1数据库中具有查询T1表的权限,正确的授权语句是______。
(分数:1.00)A.GRANT SELECT ON DB1(T1) TO u1B.GRANT SELECT TO u1 ON DB1(T1)C.GRANT SELECT TO u1 ON T1D.GRANT SELECT ON T1 TO u1 √解析:9.计算机系和教务处要对某数据库进行访问,计算机系全体教师对此数据库中的全部数据具有查询权,教务处全体人员对此数据库中全部数据具有查询、插入、删除和修改权。
在SQL Server 2000中,下列安全控制方法最合理的是______。
(分数:1.00)A.为计算机系每个教师授予每个表的SELECT权,为教务处全体人员授予每个表的SELECT、NSERT、DELETE 和UPDATE权B.为计算机系和教务处分别建立一个角色,将两个部门的每个职工设置为相应角色中的成员。
将计算机系角色和教务处角色设置为此数据库的db_datareader角色中的成员,将教务处角色设置为此数据库的db_datawriter角色中的成员√C.为计算机系和教务处分别建立一个角色,将两个部门的每个职工设置为相应角色中的成员。
为计算机系角色授予每个表的SELECT权,为教务处角色授予每个表的SELECT、INSERT、DELETE和UPDATE权D.将计算机系和教务处的每个职工都设置为db_owner角色中的成员解析:10.以下关于执行存储过程的SQL语句描述错误的是______。
(分数:1.00)A.执行存储过程的SQL语句是EXECUTEB.参数的传递方式有两种:按参数位置传递值和按参数名传递值C.按参数位置传递值时实参和形参的顺序必须一致D.按参数名传递值时实参和形参的顺序必须一致√解析:11.用于存储DELETE和UPDATE语句所影响的行的副本的表是______。
(分数:1.00)A.UPDATEDB.INSERTEDC.SELECTEDD.DELETED √解析:12.建立Windows身份验证的登录账户时使用的系统存储过程是______。
(分数:1.00)A.sp_revokeloginB.sp_addloginC.sp_grantlogin √D.sp_insertlogin解析:13.在SQL Server 2000中,若希望用户user1具有数据库服务器上的全部权限,则应将user1加入到下列角色。
(分数:1.00)A.db_owner √B.publicC.db_datawriterD.sysadmin解析:14.以下关于固定服务器角色叙述不正确的是______。
(分数:1.00)A.用户可以添加、删除或更改固定的服务器角色√B.用户的登录账户可以添加到固定的服务器角色中C.固定的数据库角色为管理数据库一级的权限提供了方便D.固定的服务器角色在服务器级上定义,这些角色具有完成特定服务器级管理活动的权限解析:15.以下关于多语句表值函数说法错误的是______。
(分数:1.00)A.多语句表值函数的功能是视图和存储过程的组合B.多语句表值函数返回一个视图C.函数体是一系列填充表返回变量的SQL语句√D.多语句表值函数的使用放在SELECT语句的FROM子句中解析:16.专指是否允许执行CREATE TABLE、CREATE VIEW等与创建数据库对象有关的操作属于______。
(分数:1.00)A.对象权限B.语句权限√C.隐含权限D.数据权限解析:17.多语句表值函数语句的返回值是一个______。
(分数:1.00)A.视图B.值C.表√D.自定义结果集解析:18.以下关于数据库中的用户及其权限说法错误的是______。
(分数:1.00)A.数据库系统管理员在数据库中具有全部的权限B.数据库对象拥有者对其所拥有的对象具有一切权限C.创建数据库对象的用户即为数据库对象拥有者D.普通用户只具有对数据库数据查询权限√解析:19.SQL Server 2000数据库用户的来源______。
(分数:1.00)A.可以是所有SQL Server的登录用户B.只能是Windows身份验证的登录用户C.只能是SQL Server身份验证的登录用户D.可以是其他数据库中的用户√解析:20.删除SQL Server身份验证的登录账户时使用的系统存储过程是______。
(分数:1.00)A.sp_revokeloginB.sp_addloginC.sp_deleteloginD.sp_droplogin √解析:21.数据库中的用户指______。
(分数:1.00)A.数据库系统管理员B.数据库对象拥有者C.普通用户D.以上全部√解析:22.用户访问SQL Server数据库中的数据时,必须经过3个认证过程,其中第二个认证过程是验证______。
(分数:1.00)A.身份验证B.用户是否是数据库的合法用户√C.数据库用户是否具有要进行的操作权限D.其他验证解析:23.不属于SQL Server数据库安全认证过程的是______。
(分数:1.00)A.服务器的合法用户B.数据库的合法用户C.计算机用户√D.具有相应的操作权限解析:二、简答题(总题数:1,分数:5.00)24.现有如下两个关系模式:Employees(Eid,Name,DeptNO)Departments(DeptNO,DeptName,TotalNumber)Employees关系模式描述了职工编号、姓名和所在部门编号;Departments关系模式描述了部门编号、名称和职工总人数。
请按SQL Server所采用的Tansact-SQL语法格式编写实现具有功能的后触发型触发器:每当在Employees 表中插入一行数据时,相应部门的职工总人数就加1。
(分数:5.00)__________________________________________________________________________________________ 正确答案:(create trigger sql_tri on employees for insert asdeclare@ eid varchar(11)declare@ name varchar(20)declare@ deptno varchar(11)declare yjy cursor forselect * from insertedopen yjyfetch next from yjy into @eid,@name,@deptnowhile @@fetch_status=0beginupdate departmentsset totalnumber=totalnumber+1where deptno=@ deptnofetch next from yjy into @eid,@name,@deptnoendclose yjydeallocate yjy)解析:[解析] 本题考查了后触发器的Transact-SQL语句。
其语法格式为:CREATE TRIGGER 触发器名称ONI|表名|视图名|[WITH ENCRYPTION]AS…SQL语句AFTER和FOR,指定触发器只有在引发的SQL语句中指定的操作都已成功执行,并且所有的约束检查也成功完成后,才执行此触发器,即后触发型触发器。