SQL SERVER 2012数据库应用技术课后习题答案1-10章全.docx_第1页
SQL SERVER 2012数据库应用技术课后习题答案1-10章全.docx_第2页
SQL SERVER 2012数据库应用技术课后习题答案1-10章全.docx_第3页
SQL SERVER 2012数据库应用技术课后习题答案1-10章全.docx_第4页
SQL SERVER 2012数据库应用技术课后习题答案1-10章全.docx_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章习题与实训答案1. 填空题(1) 人工管理阶段;文件系统阶段;数据库系统阶段(2) DBS;数据库管理系统;DBMS(3) 层次;网状;关系(4) 层次(5) 网状(6) 关系(7) 静态特征(数据结构);动态特征(数据操作);数据约束条件(8) 实体(9) 域(10) 一对一联系;一对多联系;多对多联系(11) 数据康;数据库管理系统;硬件;软件;人员(12) 关键字(13) 外键(14) 关系(15) 并;交:差;广义笛卡尔积(16) 选择;投影;连接;自然连接(17) 插入异常;删除异常;更新异常(18) 部分函数依赖;传递函数依赖(19) 第 1(20) 都不传递依赖于(21)

2、部分(22) 需求分析:概念结构设计:逻辑结构设计;数据库物理设计:数据库实施;数据库运行和维 护(23) 数据项;数据结构;数据流;数据存储:处理过程(24) 概念模型数据表示(25) 数据库物理设计2. 选择题(1) A(2) 0(3) A(4) C(5) 0(6) A(7) A(8) A(9) 0(10) B(11) D(12) D(13) A(14) C(15) D(16) B(17) D(18) B(19) A(20) C(21) D(22) C(23) D(24) C3.简答题(1) 试述数据管理技术发展的几个阶段及其特征。手工管理阶段:20世纪50年代中期以前,当时的计算机系统没

3、有专门管理数据的软件,也没有像 磁盘可以随机存取的外部存储设备。数据由计算或处理它的程序自行携带,数据和应用程序一一对应。这一时期计算机数据管理的特点是:数据的独立性差、数据不能被长期保存、数据的冗余度大、数 据面向的应用没有软件对其进行数据管理等。文件系统阶段:20世纪50年代后期到60年代中后期,磁盘成为计算机的主要外存储器,并在软 件方面出现了高级语言和操作系统,计算机不仅用于科学计算,还用于管理。在此阶段,数据以文件的 形式进行组织,并能长期保存在外存储器上,用户能对数据文件进行查询、修改、插入和删除等操作。 程序与数据有了一定的独立性,程序和数据分开存储,然而依旧存在数据的冗余度大及

4、数据不一致等缺(1)什么是常量和变量?常量也祢为字而值或标量值,是表示一个特定数据值的符号,其值在程序运行过程中不改变。变量指在程序运行过程中值可以发生变化的量。常用于保存程序运行过程中的计算结果或输入/输 出结果。SQL Server变量分为全局变量和局部变量。(2)什么是游标?游标有什么功能?游标是处理数据的一种方法,允许应用程序对查询语句SELECT返回的结果集中每一行进行相同或 不同的操作,而不是一次对整个结果集进行同一种操作。游标作用:游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标提 供了在结果集中一次一行或者多行前进或向后浏览数据的能力,可以把游标当作一

5、个指针,指定结果中 的任何位置,然后允许用户对指定位置的数据进行处理。(3)关闭游标与释放游标有什么区别?关闭游标后,游标区的数据不可再读,但不释放游标占用的数据结构。CLOSE语句关闭已打开的游 标,之后不能对游标进行读取等操作,但可以使用OPEN语句再次打开该游标。DEALLOCATE语句删除定义游标的数据结构,释放后不可再用。3.操作题(1)编写Transact-SQL程序,使用IF. ELSE语句实现成绩表Score中百分制转换为五级制,要 求显示学生学号,课程编号,百分制成绩,五级制成绩。print,学号课程号成绩 五级制,DECLARE score_Cursor CURSOR SC

6、ROLLFOR SELECT studentid,courseid,score FROM scoreOPEN score_CursorDECLARE sid nchar(13) ,cid nchar(8), s int, g nchar(6)FETCH ABSOLUTE 1 FROM score_Cursor into 曲sid,cid,sWHILE fetch_status=0BEGINif( s>if ( s>if ( s>if ( s>if ( s>90807060and and and ands<=100)s<90)s<80)s<7

7、0)0 and s<60)set set set set setg='优秀 g=,良好' 鲍二,中等g='及格'g='不及格'pr int s id+space (3)+c i d+str (s)+space(8)+gFETCH NEXT FROM score_Cursor i nto sid,cid, sENDCLOSE score CursorDEALLOCATE score_CursorGO(2)编写Transact-SQL程序,统计课程表Course中基础课程的数目,使用WHILE语句配合CONTINUE 语句实现。DECLARE

8、type_Cursor CURSOR SCROLLFOR SELECT type FROM courseOPEN type_Cursordec I are count int,诳 varchar (10)set count=0FETCH ABSOLUTE 1 FROM type_Cursor into tWHILE fetch status=0BEGINif (t<>, 基础课')beginFETCH NEXT FROM type_Cursor intocont i nueende I sebeginset count=count+1FETCH NEXT FROM type

9、_Cursor into tendENDPRINT '课程表Course中基础课程的数目为:1+STR(©count)CLOSE type_Cursor DEALLOCATE type_CursorGO(3) 使用游标实现如下操作:在数据库Student的班级表Class ±,声明一个显示班级表所有信 息的游标,打开游标,使用系统变量查询游标的数据行数,将结果保存到用户自定义的RQWL变量中。 提取游标中的第三条记录,并查询系统提取状态变量值,将状态变量值保存到用户自定义的STUTASL中。 SELECT * FROM classdec I are 0ROWL i

10、nt,STUTASL i ntset ROWL二施ROWCOUNTPRINT '游标数据行为:,+str(R0WL)DECLARE class_Cursor CURSOR SCROLLFOR SELECT * FROM classOPEN class_CursorFETCH ABSOLUTE 3 FROM class_CursorSET STUTASL=fetch_statusPRINT '读取第三行状态变量值为:+str(STUTASL)CLOSE cIass_CursorDEALLOCATE class_CursorGO(4) 使用游标实现如下操作:在数据库Library中

11、,使用循环语句和系统全局变量ctch_status, 逐一读取读者借阅图书信息,包括读者编号、读者姓名、电话号码、书名、出版社、借阅日期。DECLARE Iib_Cursor CURSOR SCROLLFOR SELECT r. reader i d, readename, teI, bookt i 11e, press, outdateFROM book b,reader r,record reWHERE b. Book i d=re. Book i d and r.Reader i d=re.Reader i dOPEN Iib_CursorFETCH ABSOLUTE 1 FROM Ii

12、b_CursorWHILE Wfetch_status=OFETCH NEXT FROM Iib_CursorCLOSE Iib_CursorDEALLOCATE Iib_CursorGO第8章习题与实训答案1. 选择题(1) C (2) B (3) C (4) A (5) C (6) D (7) A (8) A (9) B (10) B2. 操作题在Library数据库中创建存储过程和触发器实现如下功能:(1) 创建无参数存储过程PD1,实现:查询图书信息,包括图书编号,图书名称,ISBN,作者, 出版社,单价,并执行存储过程。create procedure PD1asbeginseIec

13、t bookid,bookt itle, ISBN,author,press,pr icefrom bookend执行存储过程语句如下:exec PD1(2) 创建带参数存储过程PD2,实现:根据指定ISBN,检索图书信息,包括图书编号,图书名 称,ISBN,作者,出版社,单价,自定义实参,执行存储过程。create procedure PD2lSBN nchar (21)asbeginseIect bookid,booktitle, ISBN,author,press,pr icefrom bookwhere ISBN=ISBNend执行存储过程语句如下:exec PD2 * 9787506

14、345050*(3) 创建带参数存储过程PD3,实现:根据指定的读者姓名,检索读者相关信息,包括读者编 号,姓名,电话,读者类别名称,借阅图书数目,借阅图书日期,自定义实参,执行存储过程。create procedure PD3rname varchar (20)asbeginseIect readename, teI, typename, booksum, outdatefrom reader r, readertype rt,record rewhere r. Reader id=re.Reader id and r. Typeid二rt. Typeidand readename=rnam

15、eend-执行存储过程语句如下:exec PD3 '郭玉娇'(4) 创建带默认参数的存储过程PD4,实现:向读者表Reader中插入记录,若没给出性别,则性 别默认为“女”,白定义记录,执行存储过程。create procedure PD4reader id nchar(13), readername varchar(20), typeid int,bi rthday date,sex nchar (1)='女',address varchar (40), posta I code nchar (6),tel varchar (15), enrolI date

16、date,state varchar (10), memo varchar (200)asbegininsert into readervalues (dreader id , readername,typeid , bi rthday, sex ,address,postaI code,teI, enroI I date, Estate,您memo)end-执行存储过程语句如下:exec PD4 13872-3423-022',,李玲玲',1, 11985-08-17*, default,,北京','100081', '

17、#39;, ' 2008-09-01','有效,NULL(5) 创建带OUTPUT参数的存储过程PD5,实现:根据指定读者姓名,查询并输出读者借阅图书信 息,包括读者姓名,读者电话,借阅图书名称,借书时间,自定义实参,执行存储过程。create procedure PD5(rname varchar (20) OUTPUT,booktitle varchar (40) OUTPUT,tel varchar (15) OUTPUT,outdate date OUTPUT)ASseIect rname=readename, tel=teI, bookt i11e=bookt

18、 itle,outdate=outdatefrom reader r,book b,record rev/here r. Reader id=re. Reader id and b. Bookid=re. Book idand readename=rnameSELECT,读者姓名'=rname,'读者电话'=tel, *借阅图书名称'=bookti11e,'借书时间, =outdate-执行存储过程语句如下:DECLARE rname varchar (20)DECLARE booktitle varchar (40)DECLARE tel varcha

19、r (15)DECLARE outdate dateEXEC PD5 '张©booktitle OUTPUT, teI OUTPUT, outdate OUTPUT(6) 创建DML触发器TRI,当向book图书表中录入数据时,显示表中所有记录信息。CREATE TRIGGER TR1ON bookFOR INSERTASBEGINSELECT * FROM bookEND测试语句如下:INSERT INTO bookvalues('7-5402-1197-0*,'钢铁是怎样炼成的,,978754021974*, 1,'奥斯特洛夫斯基,北京燕山 出版社

20、*, '2001-11-1', 12. 5, '2002-1-F,'可借1, NULL)(7) 创建DML触发器TR2,当删除Reader读者表中某个读者信息时,同时删除Record借阅表中对应 读者的信息。CREATE TRIGGER TR2ON readerFOR DELETEASBEGINIF EXISTS (SELECT reader id FROM deleted)BEGINDELETE FROM record WHERE reader id in (SELECT reader id FROM deleted)SELECT * FROM readerE

21、NDELSEPRINT '不存在这个读者的信息END-测试语句如下:Delete from reader where reader id='3872-3423-022'(8) 创建Instead Of触发器TR3,当在Record借阅表录入或更新信息时,判断读者的图书借出时 间和归还时间是否合法,并给出提示信息。CREATE trigger TR3ON recordi nstead of Insert,updateASBEGIN 触发器的主体语句declare date0 date -声明2个日期类型的变量declare date1 date用来存放借出日期和归还日期s

22、et date0= (select outdate from inserted)从临时表中选取借出和归还日期set date1 = (select indate from inserted)if date0>date1对借出日期和归还日期进行比较beginprint '借出日期归还日期,借阅记录表禁止此操作! rollback transaction 如果不符合条件,则撤销所做操作endEND-测试语句如下:insert into recordvalues(12, '3872-3423-001', '7-5402-1197-0', '200

23、2-3-1', '2002-2-16', NULL)update record set indate='2009-9-1' where recordid=3第9章习题与实训答案一. 习题1. 角色管理;权限管理2. Windows身份验证;SQL Server身份验证3. 服务器角色;数据库角色4. grant; revoke; deny5. WITH GRANT OPTION; CASCADE二. 实训操作(1) 创建windows身份验证的登录账号test和SQL Server身份验证的登录账号lib,密码自定 义。此操作请参照例9. 1、9.2(2

24、) 为登录账号test创建在数据库library上的用户账号testuser,登录账号lib创建在数据 库library上的用户账号libuser。此操作请参照例9. 3(3) 授予登录账号test固定数据库角色权限Sysadmin。此操作请参照例9. 5(4) 授予用户libuser对数据库library中表book上的选择,更新权限,并允许将权限转授给其 他用户。Use librarygrant select, update on book to libuserwith grant option(5) 授予用户libuser对数据库library中表reader的选择,对birthday、

25、address列的更新权 限。Use librarygrant select, update (birthday, address) on book to libuser(6) 撤销用户libuser对数据库library中表book的更新权限,并撤销转授给其他用户的权限。 Use libraryRevoke update on book from libuser cascade第10章习题与实训答案一、习题1. 什么是备份设备?备份设备是指用于存放备份文件的设备。在SQL Server 2012中备份设备可以是硬盘,也可以是磁 带机,但是在以后的版本中,将不再支持磁带设备。当使用硬盘作为备份

26、设备时,备份设备实质上就是 指备份存放的物理硬盘上的文件路径。2. 备份的类型有哪几种?备份设备可以分为两种:临时备份设备和永久备份设备。临时备份设备是指在备份过程中产生的备 份文件,般不做长久使用。永久备份设备是为了重复使用,特意在SQL Server中创建的备份文件。3. 恢复模式有哪凡种?SQL Server提供简单恢复模式、完全恢复模式和大容量日志模式三种恢复模式。4. 数据库中选型N0REC0VER和RECOVER的含义是什么?分别在什么情况下使用?NORECOVERY在执行数据库恢复操作后不回滚未完成的事务,恢复后的数据库不可用,RECOVERY与 NORECOVERY正好相反。R

27、ECOVERY是指让还原的数据库恢复到可用状态,一般可用还原最后的备份。 如果后续还有其他备份集需要还原,不应该选择此项。NORECOVERY表示当前数据库还处于还原状态, 其他用户不能访问数据库,但还可以继续还原其他备份。如果尚未完成所有备份的还原,应该选择此选 项。二、实训(1)创建备份设备lb,备份路径及文件名为“d:sqllib.bak”sp_addumpdevice 'disk', 'lb', 'D:sqllib.bak'(2)使用管理平台将数据库“library”备份到备份设备lb上,备份类型为完整数据库备份。此操作请参照例2(3)使

28、用backup语句将数据库“library”备份到备份设备lb上,备份类型为差异数据库备份。BACKUP database library to lb(4)使用管理平台从备份设备比上还原完全备份的数据库。此操作请参照例3(5)使用restore语句从备份设备lb上还原差异备份的数据库。RESTORE DATABASE library from lb(6)将“reader"表中的数据导出为文本文件,文件名为“reader.txt”此操作请参照例5(7)将“book"表中的数据导出为EXCEL文件,文件名为“book.xls”此操作请参照例6(8)将文件"reader

29、.txt”中的数据导入到“library”数据库的表a reader infow中。此操作请参照例7(9)将文件"book.xls”中的数据导入到“library r"数据库的表"bookinfo”中。此操作请参照例8点。数据库系统阶段:20世纪60年代后期,为了解决日益增长的数据量带来的数据管理上的严重问题, 数据库技术也逐渐发展和成熟起来。数据库技术使数据有了统一的结构,对所有的数据进行统一、集中、独立的管理,以实现教据的共 享,保证数据的完整和安全,提高了数据管理效率。在应用程序和数据库之间有数据库管理系统。数据 库管理系统对数据的处理方式与文件系统不同,它

30、把所有应用程序中使用的欹据汇集在一起,并以记录 为单位存储起来,便于应用程序使用。数据库系统主要特点是:数据原中的数据是结构化的,数据冗余度小、易扩充、较高的数据独立性、 较高的数据共享性,数据由DBMS统一管理和控制等。(2)什么是数据库?数据库有哪些主要特征?数据犀是一个以一定的组织方式存储在一起的、能为多个用户共享的、具有尽可能小的冗余度、与 应用彼此独立的相互关联的数据集合。数据库体系结构分为两部分:一部分是存储应用所需的数据,称 为物理数据库部分;一部分是描述部分,描述数据库的各级结构,这部分由数据字典管理。主要特征:数据库中的数据是结构化的,数据冗余度小、易扩充、较高的数据独立性、

31、较高的数据 共享性,数据由DBMS统一管理和控制等。(3)简述数据模型的组成及各组成部分的作用。数据模型是严格定义的一组概念的集合,这些概念精确地描述了系统的数据结构(静态特征)、数 据操作(动态特征)和数据约束条件,这是数据模型的三要素。数据结构:用于描述系统的静态特征,是所研究的对象类型的集合数据操作:对数据库中各种对象的实例允许执行的操作集合。数据操作包括操作对象及有关的操作 规则,主要有检索和操纵两类。数据约束条件:是一组完整性规则的集合。完整性规则是给定数据模型中的数据及其联系所具有的 制约和依存规则,用以限定符合数据模型的数据库状态及其状态的变化,以保证数据的正确、有效和相 容。(

32、4)什么是关系模型?关系模型有什么特点?试举一个关系模型的例子。(5)试举三个实例,要求实体型之间分别具有一对一、一对多和多对多的联系。一对一联系:班级和班长,一个班级有一个班长,一个班长只能是一个班级的班长;一对多联系:部门和职工,一个部门有多个职工,一个职工只属于一个部门;多对多联系:仓库和商品,一个仓库可以存放多种商品,一种商品可以在多个仓原存放。(6)DBMS的主要功能有哪些?数据定义、数据操作、数据查询、数据维护(7)解释以下术语,实体、实体型、实体集、属性、键、DBMSo实体:客观存在并且可以相互区别的事物称为实体。属性:描述实体的特性称为属性。实体型:具有相同属性的实体必然具有共

33、同的特征和性质,用实体名及其属性名的集合来抽象和表 达同类实体,称为实体型。实体集:同类实体的集合称为实体集,例如全体学生、全体教师等。键:二维表中能唯一标识一个元组的属性或者是属性组合称为关键字。在数据库系统中称为“主 键”。DBMS:数据库管理系统的简称,是用来管理和维护数据库的计算机系统软件。(8)什么是数据库系统,组成部分有哪些?数据库系统简称为DBS,数据原系统(DBS)是一个带有数据库的计算机系统,它能够按照数据库的 方式存储和维护数据,并且能够向应用程序提供数据。数据犀系统通常由数据库、硬件、软件和人员四个部分组成。4. 实训操作(1)设有关系职工关系,如表1-21所示表1-21

34、职工关系职工号职工名年龄性别单位号单位名E1赵三20男D3CCCE2刘强25男D1AAAE3李宝库38女D3CCCE4张强25男D3CCC试问职工关系属于3NF吗?为什么?若不是,它属于第几范式?如何将其规范化为3NF?答:职工关系不属于3NF,因为职工关系的主键是“职工号”,该关系的函数依赖关系为:职工号-职 工名,职工号-年龄,职工号-性别,职工号-单位号,单位号-单位名,从而职工号-单位名。职工 关系存在传递函数依赖,为此不是3NF。该关系属于2NF。将职工关系规范化为3NF:职工(职工号,职工名,年龄,性别,单位号)单位(单位号,单位名)(2)假设某商业集团数据库有关系模式R如下:R

35、(商店编号,商品编号,库存数量,部门编号,负责人)如果规定: 每个商店的每种商品只在一个部门销售。 每个商店的每个部门只有一个负责人。 每个商店的每种商品只有一个库存数量回答下列问题: 根据上述规定,写出关系模式R的基本函数依赖商品编号-商店编号,(部门编号,商品编号)-原存数量,商品编号-部门编号,部门编号- 负责人 写出关系模式R的候选键商店编号,商品编号 试问关系模式R最高己经达到第几范式?为什么?如果R不属于3NF,将R分解成3NF模式集。 1NF,因为R关系中存在部分函数依赖和传递函数依赖。将R分解为3NF:商品(部门编号,商品编号,库存数量)部门(部门编号,负责人,商店编号)(3)

36、设计一个图书管理系统的数据库,系统约定:图书:图书号、图书名、作者、类型、单价、数量出版社:出版社号、出版社名称、所在城市、电话、邮政编码、联系人读者:借书证号、姓名、性别、班级其中约定:任何人可以借多本图书,任何一种图书可以被多个读者借阅,读者在借书和还书时,要 登记借书日期和还书日期;图书入库时要记录购买数量;一个出版社可以出版多种书籍,同一种书仅为 一个出版社所出版。根据以上约定,回答如下问题: 设计图书管理系统的出版局部E-R图、借阅局部E-R图。 将出版局部E-R图与借阅局部E-R图集合成全局E-R图。 根据以上全局E-R图导出关系模式,并指出主键和外键。第1章习题与实训答案1.填空

37、题(1)SQL Server的实例主要包括两种,分别是和。(2)SQL Server 2012功能模块众多,但是从总体来说可以将其分成两大模块:和(3)SQL Server数据库引擎有四大组件:(4)SQL Server 2012服务器组件主要包括、等。(5)服务是SQL Server 2012数据库用于存储、处理和保护数据的核心服务。(6)启动SQL Server服务有多种方法,分别是、。(7)SQLServernJ以在两种不同的身份验证模式下操作,分别是和(8)在SQL Server提供的管理工具中,管理工具是用于访问、配置、管理和开发SQL Server组件的集成环境,使各种技术水平的开

38、发人员和管理员都能使用SQLServer。2. 简答题(1)SQL Server 2012有哪些新功能特性?(2)简述SQL Server各版木功能。(3)简述安装SQL Server 2012应满足的软件、硬件环境的要求。(4)SQL Server 2012的安装方式有哪些?(5)SQL Server 2012安装后,如何启动数据库服务器?如何断开与服务器的连接?3. 操作题(1)请在用户的计算机系统上安装SQL Server 2012数据库平台。(2)使用Windows控制面板管理工具的服务功能对SQL Server服务进行配置。(3)使用SQL Server配置管理器对SQL Serve

39、r服务进行配置。(4)使用SSMS管理工具连接到网络服务器。第3章习题与实训答案1. 填空题(1)数据库文件;事务日志文件;数据库文件组(2).mdf; .ndf: . Idf(3)SQL Server数据库分为、和三类。(4)系统数据库;示例数据库;用户数据犀(5)Master(6)Creat Database; Alter Database; Drop Database;(7)name: size: maxs i ze: f iI egrowth2. 操作题(1)使用SSMS管理工具创建图书管理系统数据库,数据库名为Library,要求数据库物理数据文件 存储在“D:data”文件夹中,主

40、数据文件初始大小为10 MB,自动增长方式为无限制。数据库事务日志 文件初始大小为3 MB,自动增长方式为无限制,未指定名称的均为默认值。请参照教材,操作过程略。(2)将创建的数据库Library的主数据库文件初始大小扩大为15 MB。请参照教材,操作过程略。(3)使用Transact-SQL语言的ALTER DATABASE语句为数据库BOOK添加次要数据文件,逻辑名称为 “Librarydat” ,存储在“D:data”文件夹中,设置初始大小为3 MB,最大大小为100 MB,自动增长方式为15%。USE masterGOALTER DATABASE BOOKADD FILE(NAME =

41、 Library. Idat.FILENAME='D:daiaLibrary_lda(.ndfSIZE = 3 MB、MAXSIZE = 100 MB,FILEGROWTH =15)GO(4)使用Transact-SQL语言的CREATE DATABASE语句创建商品销售数据库,数据库名称为 "Merchandising",数据文件和日志文件保存在“D:spxs”文件夹,主数据文件名为 <4Merchandising_dat. mdfM ,初始大小为5 MB ,自动增长方式为无限制,日志文件名为 uMerchandising",初始大小为5 MB,最

42、大大小为50 MB,自动增长为5 MB。CREATE DATABASE MerchandisingON(NAME=Mcrchandising_dat,FILENAME='d:spxs Merchandising_dat.mdfS!ZE=5)LOG ON(NAME=Merchandising,FILENAME-d:spxsMcrchandising_log.ldf',SIZE=5,MAXSIZE=50,FILEGROWTH=5 MB)GO(5)将商品销售数据库"Merchandising”从SQL Server数据库服务器中分离。请参照教材,操作过程略。(6)将分离出来

43、的商品销售数据库“Merchandising”附加到当前的SQL Server数据库服务器中。 请参照教材,操作过程略。(7)将商品销售数据库“Merchandising”使用Transact-SQL语言删除。DROP DATABASE Merchandising第4章习题与实训答案1. 选择题(I) A(2)C(3)A(4)B(5)A(6) B(7)A(8)D(9)A(10)B(II) C(12)D(13)A(14)B(15)A2. 实训题(1) 使用SSMS管理工具在数据库Library中创建Booktype表、Book表。请参照教材,操作过程略。(2) 使用Transact-SQL语句创

44、建Readertype表、Reader表和Record表。创建 ReadertypeCREATE TABLE Readertype(Typeid int primary key,Typcname Varchar(20) not null,Booksum ini not null,Bookday int not null)创建Reader表CREATE TABLE Reader(Readerid nchar( 13) primary key,Readername Varchar(20) not null,Typeid int foreign key references Readertype(T

45、ypeid),Birthday date.Sex nchar( 1),Address varchar(40),Postalcodc nchar(6),ENrolldate date,State varchar( 10),Memo Varchar(200)创建Record表CREATE TABLE Record(Recordid int primary key,Readerid nchar(13) foreign key references Reader(Readerid),Bookid nchar(20) foreign key references Book(Bookid),Outdatc

46、 date not null,Indate date,State varchar( 10) not null)(3) 使用SSMS管理工具修改Reader表,增加一个字段电话号码“Tel”,数据类型为char(15)。请参照教材,操作过程略。(4)使用Transact-SQL语句修改Reader表,删除Tel列。ALTER TABLE Reader DROP COLUMN Tel第5章习题与实训答案1. 选择题(3) D (4) B (5) D(8) A (9) C (10) A(1) C (2) B(6)A (7) D2. 操作题在Library数据库中使用SQL语句实现下面查询: (1)查

47、询图书价格在1020之间的图书信息。SELECT *FROM bookWHERE price BETWEEN 10 AND 20(2)查询“陕西师范大学出版社”和“电子工业出版社”出版的图书的编号、图书名称以及作 者。SELECT bookidbooktitle,authorFROM bookWHERE press IN (,陕西师范大学出版社电子工业出版社,)(3)查询所有姓“李”的作者编写的图书的基本信息。SELECT *FROM bookWHERE author LIKE '李'(4)查询出版日期为空的读者的基本信息。(无电话号码)SELECT *FROM readerW

48、HERE birthday IS NULL(5)查询所有家庭住址为“江苏省”并且性别为“男”的读者的信息。SELECT *FROM readerWHERE address=,江苏省,AND sex='男,(6)查询每类图书的平均价格、最高价格、最低价格,结果显示图书类别编号和平均价格、最高 价格、最低价格SELECT (ypeid.AVG(price) AS 平均价格,MAX(price) AS 最高价格,MIN(price) AS 最低价格FROM bookGROUP typeid(7)查询读者编号、读者姓名、借阅图书编号以及借阅日期。SELECT rcadcrid,readerna

49、me,book.bookid,outdatcFROM book,reader.recordWHERE book.bookid=record.bookid AND rcadcr.rcadcrid=record.rcadcrid(8)查询图书类别为“文学”的图书的编号、名称以及价格。SELECT bookid,booktitle,priceFROM book,booktypc WHERE book.typcid=booktypc.typcid(9) 查询所有价格高于该类所有图书平均价格的图书的编号和名称。SELECT bookid,priceFROM bookWHERE price>(sel

50、ect AVG(price) FROM book)(10) 查询没有被借阅过的图书的编号和名称。SELECT bookid.booknameFROM bookWHERE bookid not in (SELECT bookid FROM record)(11) 查询所有类别图书中平均价格高于25元的图书类别编号和平均价格,结果按照平均价格降 序排列。SELECT typcid AS 类别编号,AVG(pricc) as 平均价格FROM bookGROUP typeid HAVING AVG(price)>25ORDER BYAVG(price) DESC(12) 查询每个读者借阅的图书数量,结果显示借阅数量在前3名的读者的编号以及借阅的数 量。SELECTTOP3readeridAS 读者编号,COUNT(*)AS 借阅数量FROM recordGROUP read

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论