1、数据库原理与应用课后作业参考答案模块1数据库理论基础1. 某医院病房计算机管理中心需要如下信息:科室:科名、科地址、科电话、医生姓名病房:病房号、床位号、所属科室名医生:姓名、职称、所属科室名、年龄、工作证号病人:病历号、姓名、性别、诊断、主管医生、病房号其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。请设计该计算机管理系统的E-R模型。答:2. 一个图书馆借阅管理数据库要求提供下述服务:(1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号唯一标识。(2)可随时查询书籍借还情况,包
2、括借书人单位、姓名、借书证号、借书日期和还书日期。我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息向相应出版社增购有关书籍。我们约定,一个出版社可出版多种书籍,同一教材仅为一个出版社出版,出版社名具有唯一性。请根据以上情况和假设设计满足需求的E-R模型。答:模块3 表的操作一填空题1数字数据可分为整数型、精确数值型和近似数值型3种类型。其中,精确数值型数据由由整数和小数两部分组成2在创建表的命令语句中,要设置表字段属性为自动编号的关键字是IDENTITY。3SQL Server 2008中,根
3、据表的用途可以分为4类,即系统表、用户表、已分区表和临时表。4如果表中记录的某一字段或字段组合能唯一标识记录,则称该字段或字段组合为_主键_。5创建数据库表的命令语句是create table。二选择题1使用SQL语句修改表结构时,其语句是下面的( B )选项。 A. ALTER DATABASE B.ALTER TABLE C. UPDATE TABLE D.UPATE DABASE2下列对表的描述正确的是( C )。 A.在数据库中表用来表示关系模型中的实体 B表是对数据进行存储和操作的一种逻辑结构 C表是用来组织和存储数据的数据库对象 D表可以存储数据库的其他数据库对象3在SQL Ser
4、ver 2008的数据类型中可以用来存储图片的数据类型是(B) A. binary B.imageC.varchar D.int4使用系统存储过程( C )可以查看表的行、大小和空间的统计信息。 A. sp_tableB.sp_helpC.sp_spaceusedD.sp_rename5订单表Orders的列Orderid的类型是小整型(smallint),根据业务的发展需要将其改为整型(integer),应该使用下面的( A )语句。 A. ALTER TABLE Orders ALTER COLUMN Orderid integer B. ALTER COLUMN Orderid inte
5、ger FROM Orders C.ALTER TABLE Orders (Orderid integer) D. ALTER COLUMN Orders.Orderid integer模块4数据库查询语句一填空题1集合查询的关键字为UNION,在使用它时一定要注意多个查询的列数和列的顺序一定要相同。2内连接的关键字为INNER JOIN,外连接的关键字为LEHT JOIN,交叉连接的关键字为CROSS JOIN。3在连接多个表时,基本连接使用JOIN_来连接,其他连接形式都需要用到关键字_ON。4GROUP BY子句中可以使用聚合函数,那么MAX(数量)表示_最大值。5ORDER BY子句中
6、_ASC表示升序排列,DESC表示降序排列,默认情况下为升序排列。二选择题1下面所述连接方式中哪种连接方式中可以使用ON子句( D )。 A内连接 B基本连接 C交叉连接 D联合查询2下面哪些关键字可用于返回多行的子查询( A )。 AlN和EXISTS关键字 BSOME,ANY和ALL关键字 C.QUERY关键字 DJOIN关键字3下面SELECT语句中哪些子句可以包含子查询( C )。 ASELECT BGROUP BY CWHERE DORDERBY4下面对HAVING子句说法错误的是(B )。 AHAVING子句的使用方法与WHERE子句基本相同 B与GROUP BY子句结合使用时,其
7、限定检索范围为GROUP BY子句结果集 C与WHERE子句相同,HAVING子句中同样可以使用IN LIKE或BETWEEN D只能与GROUP BY子句结合使用5在SELCET子句中,下列( B )子句用于将查询结果存储在一个新表中。 ASELCET子句 BINTO子句 CWHERE子句 DFROM子句模块5 T-SQL语句一填空题1T-SQL语言的三种类型分别是数据定义语言、数据操作语言和数据控制语言。2在SQL Server中,变量可分为两类:_全局变量_和局部变量。当声明局部变量后,可用SET或SELECT语句为其赋值。3常规标识符是指不需要使用分隔标识符等定界符进行分隔的标示符。4
8、比较运算能够进行除_text_型、_ntext_型和_image型之外的其他数据类型表达式的比较操作。5在Transact-SQL中局部变量用_DECLARE 语句来声明。二选择题1&、*、l和OR这四个运算符中优先级最高的是( B )。 A& B* C.l DOR2SELECT语句属于T-SQL的语言类型是( B )。A数据定义语言 B数据操纵语言C数据控制语言 D流程控制语言3下列常量中属于字符串常量的是( A )。 A你好 BWhats this C.NNEW D.Whats your name.4下面选项中,属于T-SQL不支持的流程控制语句是(A )。A. IFTHEINELSE C
9、. DO CASEB. BEGINEND D. DO WHILE5聚合函数(B )可实现平均数的求取。A. SUM B. AVG C. MIN D. MAX模块6数据库完整性一填空题1唯一约束包括PRIMARY KEY约束和_UNIQUE_。2数据库完整性是指数据库要保持数据的正确性和相容性,它是衡量数据库数据好坏的一种标志。3SQL Server 2008中包括的约束有主键约束_、外关键字约束、唯一约束、检查约束、缺省约束和_非空约束_。4创建规则的语句是CREATE RULE,将规则绑定的系统存储过程是sp_bindrule_。5SQL Server 2008中,可用于实现数据完整性的方法
10、共有两类,即_过程型数据完整性和_声明型完整性二 选择题1在下面的约束中,不是用来维护两个表之间的一致性关系的约束是( A )。AFOREIGN KEY约束 BCHECK约束CUNIQUE约束 DDEFAULT约束2假设,创建表时的某列要求可以包含空值,但不允许有重复值,那么在该列不能使用的约束是下面的哪一项( B )。APRIMARY KEY约束 BUNIQUE约束CCHECK约束 DNOT NULL约束3解除绑定默认值的系统存储过程是( D )。A. sp_defaultB.sp_undefaultC. sp_bindefaultD.sp_unbindefault4创建默认对象时,下面可以
11、作为默认对象的值的是( AB )。A常量数据 B函数或表达式C表列或数据库对象 D除二进制外的数值型数据5规则是数据库对象之一,它的作用与CHECK约束的部分功能相同,在向表的某列插入或更新数据时,用它来限制输入的新值的取值范围,下列说法中正确的是( ABC )。ACHECK约束是用CREATE TABLE语句在创建表时指定的,而规则需要作为单独 的数据库对象来实现B在一列上只能使用一个规则,但可以使用多个CHECK约束C规则可以应用于多个列,还可以应用于用户定义数据类型,而CHECK约束只能 应用于它定义的行D表或用户定义数据类型的删除、修改不会对与之相连的规则产生影响。而CHECK 约束则
12、随着表的删除而撤销约束模块7视图和索引一填空题1创建唯一性索引时,应保证创建索引的列不包括重复的数据,并且没有两个或两个以上的空值。如果有这种数据,则必须先将其删除,否则索引不能成功创建。2一个表最多只可以有_1_个聚集索引。3在SQL Server 2008中,有两种基本类型的索引:简单索引和_复杂索引。4查看视图的基本信息可以使用系统存储过程_sp_help,查看一个视图order view的定义文本信息,可以使用sp_helptext。5在SQL Server 2008系统中,可以把视图分成3种类型,即标准视图、索引视图和分区视图。二选择题1“CREATE UNIQUE NONCLUST
13、ERED INDEX indexidON学生表(学号)”语句创建了一个(D )索引。 A唯一索引 B聚集索引 C主键索引 D唯一非聚集索引2如果需要加密视图的定义文本,可以使用下面( D)子句。 AWITH CHECK OPTION BWITH SCHEMABINDING CWITH NOCHECK DWITH ENCRYPTION3使用SQL语句通过视图修改基本表中的数据时,其关键字是( C )。 ACREATE BUPDATE CALTER DDROP4以下关于视图的描述,正确的是( ABD )。 A视图是从一个或几个基表或视图中导出的虚表 B视图并不实际存储数据,只在数据字典中保存其逻辑
14、定义 C视图里面的任何数据不可以进行修改 DSQL中的SELECT语句可以像对基表一样来对视图进行查询5下列几种情况适合创建索引的是( C )。 A列的取值范围很少 B用作查询条件的列C频繁搜索的列 D连接中频繁使用的列模块8 游标、事务和锁一填空题1要成为一个事务,则一个工作单元必须具有原子性、一致性、隔离性和持续性属性,即ACID属性。2游标能够部分读取返回的结果集中的一行或一部分行,并允许应用程序通过当前行来定位修改表中的数据。3在SOL Server 2008中,SQL Server以三种事务模式运行,分别是自动提交事务、和_隐式事务_。4事务是SQL Server中的单个逻辑工作单元
15、,一个事务内的所有语句被作为一个整体执行。5当多个事务同时对数据库的同一部分数据进行操作时,会引发的并发问题主要有:丢失修改、脏读、不可重复读取和幻读。二选择题1FETCH PRIOR语句将提取游标结果集中当前行的( B )。A第一行 B最后行C前一行 D后一行2要使游标具有滚动性,应在游标声明语句中使用关键字(B)。AINSENSITIVE BSCROLLCRETURN DUPDATE3假设声明了一个名为cur的游标,并且游标已经打开。游标指向的当前行是结果集中的第12行。如果要提取相对于当前行的前5行中的数据,则可以使用下列的( A )语句。A. FETCH RELATIVE 5 FROM
16、 curB. FETCH RELATIVE.5 FROM curC. FETCH ABSOLUTE 5 FROM curD. FETCH ABSOLUTE.5 FROM cur4假设数据库中有两个事务同时对数据进行操作,事务T1修改表中的数据,事务T2在事务T1还未提交数据前查看了这些数据。然后,事务T1又撤销了这些修改操作。那么会发生下面( C )并发问题。A丢失更新 B脏读C不一致的分析 D幻读5事务的(A )属性不可以用来标识事务的全有或全无性质。A原子性 B一致性C隔离性 D持久性模块9存储过程和触发器一填空题1在无法得到定义该存储过程的脚本文件。而又想知道存储过程的定义语句时,使用_
17、sp_stored_procedures_系统存储过程,可以查看定义存储过程的T-SQL语句。2针对每一种触发动作,在每个表或视图中只能有一个INSTEAD OF类型的触发器。3在SQL Server 2008中,触发器分为INSTEAD OF触发器和_AFTER触发器。4为了接收某一存储过程的输出参数值,需要一个变量来存放该值,在该存储过程的调用语句中,必须为这个变量加上OUTPUT声明。5系统存储过程创建和保存在master数据库中,都以sp_为名称的前缀,可以在任何数据库中使用系统存储过程。二选择题1以CREATE PROCEDURE为关键字的创建语句可以包括( ABCD )。A. CR
18、EATETABLE B.DROP TABLEC. ALTERTABLE D.CREATE DEFAUT2在一个表上可以有( B )不同类型的触发器。A种 B两种C三种 D无限制3要查看ove10rders储存过程的内容,可以使用的语句是( C )。 A. EXEC sp_helptext ove10rders B. EXEC sp_helpoverOrders C. EXEC sp_restored_proceduresoverOrders D.EXEC sp_ depends overOrders4下而选项中属于存储过程优点的是(ABC )。 A增强代码的重用性和共享性 B可以使运行加快速度
19、,减少网络流量 C可以作为安全性机制 D编辑简单模块10 SQL Server安全管理一填空题1SQL Server 2008给用户提供了预定义的服务器角色和数据库角色。2SQL Server 2008的用户权限可以划分为三类:对象权限、语句权限和隐含权限。3SQL Server 2008中,一个请求服务器、数据库或架构资源的实体称为,它具有唯一的安全标识符。4对于表和视图,拥有者可以授予数据库用户INSERT、UPDATE、DELETE、和SELECT五种权限。5SQL Server登录有两种模式,分别是WINDOWS登录方式和SQL SERVER 登录方式。二选择题1下列选项中属于Wind
20、ows身份验证模式的是( ABC )。A. BUILTINZHT B.PYPHoker.somCPYPZHT Ddbo2SQL Server 2005的sysusers表所在的数据库为( A )。Amaster数据库 B所有用户创建的数据库C所有数据库 D注册表3在数据库角色不能被删除的是( ABCD )。Adb owner BdbdenydatawriterCpublic Ddbdatarcader4创建一个默认数据库为ProductSale,用户名是userl,密码为8888的SQL Server身份验证连接,使用语句应为( A )。A. CREATE LOGIN tuserl, WITH PASSWORD 8888, DEFAULT DATABASE=ProductSaleB. EXECUTE SP_SETADDROLEMEMBER tuserl, 8888, ProductSaleC. EXECUTE SP_SETADDROLE userl, 8888, ProductSaleD. EXECUTE SP_GRANTDBACCESSuserl, 8888, ProductSale5下列属于数据库级别安全包括的主体的是( ABCD )。A映射为Windows登录B映射为SQL Server登录C数据库角色 D应用程序角色
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1