数据库技术(SQLServer)习题与参考答案_第1页
数据库技术(SQLServer)习题与参考答案_第2页
数据库技术(SQLServer)习题与参考答案_第3页
数据库技术(SQLServer)习题与参考答案_第4页
数据库技术(SQLServer)习题与参考答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流数据库技术(SQLServer)习题与参考答案.精品文档.数据库技术(SQLServer)习题与参考答案第一章:1、SQL Server 2005有哪些新增特性?答:SQL Server 2005的新特性主要体现在企业数据管理、开发人员生产力、商务智能三个方面。企业数据管理体现在高可用性、管理工具、安全性和可伸缩性;开发人员生产力体现在Common Language Runtime集成、集成XML、Transact-SQL增强和SQL服务代理;商务智能体现在分析服务、数据转换服务、报表服务和数据挖掘。2、SQL Server 2005安装的软

2、件和硬件环境是什么?答:SQL Server 2005安装的软件和硬件环境参见教材6。3、SQL Server 2005有哪些版本?有哪些服务组件?答:SQL Server 2005包括企业版、标准版、工作组版、开发版和简易版五个版本,服务组件主要有SQL Server 数据库引擎、Analysis Services、Reporting Services、Notification Services、Integration Services等。4、什么是实例?经常提到的SQL Server 2005服务器和服务器实例是否具有相同的含义?答:实例就是SQL服务器引擎,每个SQL Server数据库

3、引擎实例各有一套不为其他实例共享的系统及用户数据库。一个SQL Server服务器就是一个实例,一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。5、默认实例和命名实例有何差别?在安装和使用上有何不同?答:实例又分为“默认实例”和“命名实例”,如果在一台计算机上安装第一个SQL SERVER 2005命名设置保持默认的话,那这个实例就是默认实例。一台计算机上最多只有一个默认实例,也可以没有默认实例,默认实例名与计算机名相同。除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。6、SQL Server 2005的安全性验证分为哪两

4、个阶段?答:第1个阶段是身份验证,验证用户是否具有“连接权”;第2个阶段是数据库的访问权,验证连接到服务器实例的用户,即已登录到服务器实例的用户,是否具有“访问权”。7、SQL Server 2005有哪些主要的实用工具?每个工具都有什么用途?答:SQL Server Management Studio,是Microsoft SQL Server 2005中的新组件,这是一个用于访问、配置、管理和开发SQL Server的所有组件的集成环境,是SQL Server 2005中最重要的管理工具。SQL Server Configuration Manager,用来管理SQL Server 200

5、5所提供的服务、服务器与客户端通信协议以及客户端的基本配置管理。SQL Server外围应用配置器用来启用、禁用、开始或停止SQL Server 2005的功能、服务和远程连接。Notification Services命令提示是用来开发及部署应用程序以产生和传送通知的平台。Reporting Services配置用于配置和管理SQL Server 2005的报表服务器。SQL Server 错误和使用情况报告。SQL Server Profiler也称为SQL Server事件探查器,用于监视SQL Server数据库引擎和Analysis Services的实例,并捕获数据库服务器在运行过

6、程中发生的事件,将事件数据保存在文件或表中供用户分析。第二章:1、在SQL Server 2005中数据库文件有哪3类?各有什么作用?答:SQL Server 2005中数据库文件有主数据文件、辅助数据文件、事务日志文件。主数据文件是数据库的起点,指向数据库中文件的其他部分,同时也用来存放用户数据;辅助数据文件专门用来存放数据;事务日志文件存放恢复数据库所需的所有信息。2、SQL Server 2005中数据文件是如何存储的?答:SQL Server 2005中采用以页为数据库存储的基本单位,数据文件的页按顺序编号,文件首页的页码是0。每个文件都有一个文件ID号。在数据库中惟一标识一页,需要同

7、时使用文件ID和页码。在每个文件中,第一页是包含文件特性信息的文件首页,在文件开始处的其他几个页中包含系统信息,如分配映射表。系统页存储在主数据文件和第一个事务日志文件中,其中有一个系统页包含数据库属性信息,它是数据库的引导页。3、SQL Server 2005中创建、查看、打开、删除数据库的方法有哪些?答:方法分别有两种,即可以通过SQL Server Management Studio图形化界面实现,也可以通过SQL语句命令实现。4、通过SQL语句,使用_CREATE_ DATABASE _命令创建数据库,使用_ EXEC sp_helpdb _命令查看数据库定义信息,使用_ EXEC s

8、p_dboption 命令设置数据库选项,使用_ ALTER DATABASE _命令修改数据库结构,使用_ DROP DATABASE _命令删除数据库。5、安装SQL Server 2005时,系统自动提供的4个系统数据库分别是什么?各起什么作用?答:系统自动提供的4个系统数据库分别是master数据库、model数据库、msdb数据库、tempdb数据库。作用参见教材3.2节。第三章:1、如何理解表中记录和实体的对应关系?为什么说关系也是实体?在表中如何表示?答:实体是客观存在并且可以相互区别的事物,实体可以是具体的事物,也可以是抽象的事物。不同的事物是用不同的特征决定的,用来描述实体的

9、特性称为实体的属性。表中每条记录对应一个实体,而每个字段保存着对应实体的属性值。2、说明主键、惟一键和外键的作用。说明它们在保证数据完整性中的应用方法。答:主键是唯一识别一个表的每一记录,作用是将记录和存放在其他表中的数据进行关联,并与外键构成参照完整性约束。惟一键用于指明创建惟一约束的列上的取值必须惟一。外键用于建立和加强两个表数据之间的链接的一列或多列。通过将保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这个列就成为第二个表的外键。外键约束的主要目的是控制存储在外键表中的数据,但它还可以控制对主键表中数据的修改。3、参照完整性要求有关联的两个或两个以上表之间数据的_一

10、致性_。参照完整性可以通过建立_主键_和_外键_来实现。4、创建表用_CREATE TABLE _语句,向表中添加记录用_INSERT INTO_语句,查看表的定义信息用 EXECUTE sp_help 语句,修改表用 ALTER TABLE 语句,删除表用 DROP TABLE语句。5、SQL Server 2005中有哪些类型数据?答:参见教材表。6、现有图书管理数据库的三个关系模式:图书(总编号,分类号,书名,作者,出版单位,单价)读者 (借书证号,单位,姓名,性别,职称,地址)借阅 (借书证号,总编号,借书日期)1)利用SQL Server 2005创建图书管理库和图书、读者和借阅三个

11、基本表的表结构:2)利用SQL Server 2005在三个表中分别插入以下所给元组:图书:总编号分类号书名作者出版单位单价445501TP3/12数据库导论王强科学出版社17.90445502TP3/12数据库导论王强科学出版社17.90445503TP3/12数据库导论王强科学出版社17.90332211TP5/10计算机基础李伟高等教育出版社18.00112266TP3/12FoxBASE张三电子工业出版社23.60665544TS7/21高等数学刘明高等教育出版社20.00114455TR9/12线性代数孙业北京大学出版社20.80113388TR7/90大学英语胡玲清华大学出版社12

12、.50446601TP4/13数据库基础马凌云人民邮电出版社22.50446602TP4/13数据库基础马凌云人民邮电出版社22.50446603TP4/13数据库基础马凌云人民邮电出版社22.50449901TP4/14FoxPro大全周虹科学出版社32.70449902TP4/14FoxPro大全周虹科学出版社32.70118801TP4/15计算机网络黄力钧高等教育出版社21.80118802TP4/15计算机网络黄力钧高等教育出版社21.80 读者:借书证号单位姓名性别职称地址111信息系王维利女教授1号楼424112财会系李 立男副教授2号楼316113经济系张 三男讲师3

13、号楼105114信息系周华发男讲师1号楼316115信息系赵正义男工程师1号楼224116信息系李 明男副教授1号楼318117计算机系李小峰男助教1号楼214118计算机系许鹏飞男助工1号楼216119计算机系刘大龙男教授1号楼318120国际贸易李 雪男副教授4号楼506121国际贸易李 爽女讲师4号楼510122国际贸易王 纯女讲师4号楼512123财会系沈小霞女助教2号楼202124财会系朱 海男讲师2号楼210125财会系马英明男副教授2号楼212 借阅:借书证号总编号借书日期1124455011997-3-191253322111997-2-121114455031997

14、-8-211121122661997-3-141146655441997-10-211201144551997-11-21201188011997-10-181194466031997-12-121124499011997-10-231154499021997-8-211181188011997-9-10第四章:第三章3.6有图书管理数据库的三个关系模式:图书(总编号,分类号,书名,作者,出版单位,单价)读者 (借书证号,单位,姓名,性别,职称,地址)借阅 (借书证号,总编号,借书日期)1.用SQL完成如下查询:1)找出姓李的读者姓名和所在单位。select 姓名,单位from 读者where

15、 姓名like '李%'2)列出图书库中所有藏书的书名及出版单位。select 书名,出版单位from 图书3)查找高等教育出版社的 所有图书及单价,结果按单价降序排序。select 出版单位,书名,单价from 图书where 出版单位='高等教育出版社'order by 单价desc4)查找价格介于10元和20元之间的图书种类,结果按出版单位和单价升序排序。select 书名,出版单位,单价from 图书where 单价between 10.00 and 20.00order by 出版单位,单价asc5)查找书名以计算机打头的所有图书和作者。select

16、书名,作者from 图书where 书名like '计算机%'6)检索同时借阅了总编号为112266和449901两本书的借书证号。select 借阅.总编号,借书证号from 图书,借阅where 图书.总编号=借阅.总编号and 借阅.总编号in ('112266','449901') 7)查找所有借了书的读者的姓名及所在单位。select distinct 姓名,单位from 读者inner join 借阅on 借阅.借书证号=读者.借书证号8)找出李某所借图书的所有图书的书名及借书日期。select 书名,姓名,借书日期from 图书in

17、ner join 借阅on 图书.总编号=借阅.总编号join 读者on 借阅.借书证号=读者.借书证号where 读者.姓名like '李%'9)查询1997年10月以后借书的读者借书证号、姓名和单位。select distinct 读者.借书证号,姓名,单位from 借阅inner join 读者on 借阅.借书证号=读者.借书证号where 借阅.借书日期>='1997-10-1'10)找出借阅了FoxPro大全一书的借书证号。select 借书证号from 借阅where 总编号in (select 总编号 from 图书 where 书名=

18、9;FoxPro大全')11)找出与赵正义在同一天借书的读者姓名、所在单位及借书日期 。select 姓名,单位,借书日期from 借阅,读者where 借阅.借书证号=读者.借书证号and 借书日期=(select 借书日期 from 借阅,读者 where 借阅.借书证号=读者.借书证号and 姓名='赵正义')12)查询1997年7月以后没有借书的读者借书证号、姓名及单位。select distinct 借书证号,姓名,单位from 读者where 借书证号not in (select 借书证号 from 借阅 where 借书日期>='1997-0

19、7-01' )2.完成下面SQL高级查询:13)求科学出版社图书的最高单价、最低单价、平均单价。select max(单价) 最高单价,min(单价) as 最低单价,avg(单价) as 平均单价from 图书where 出版单位='科学出版社'14)求信息系当前借阅图书的读者人次数。select count(借书证号)from 借阅where 借书证号in (select 借书证号 from 读者 where 单位='信息系')15)求出各个出版社图书的最高价格、最低价格和册数。select 出版单位,max(单价) 最高价格,min(单价) as

20、最低价格,count(*) 册数from 图书group by 出版单位16)分别找出各单位当前借阅图书的读者人数。select 单位,count(借阅.借书证号)from 借阅,读者where 借阅.借书证号in (select 借书证号 from 读者)group by 单位17)找出当前至少借阅了2本图书的读者及所在单位。select 姓名,单位from 读者where 借书证号in (select 借书证号 from 借阅 group by 借书证号 having count(*)>=2)18)分别找出借书人次超过1人次的单位及人次数。select 单位,count(*) as

21、超过人次from 借阅,读者where 读者.借书证号=借阅.借书证号group by 单位having count(*)>=219)找出藏书中各个出版单位的册数、价值总额。select 出版单位,count(*) 册数,sum(单价) 总价from 图书group by 出版单位20)查询经济系是否还清所有图书。如果还清,显示该系所有读者的姓名、所在单位和职称select 姓名,单位,职称from 读者where 单位='经济系' and not exists (select * from 读者,借阅 where 读者.借书证号=借阅.借书证号and 单位='经

22、济系')3、为什么说视图是虚表?视图的数据存在什么地方?答:视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据。视图通过定义从基表中搜集数据,并展现给用户。数据存储在对应的数据表中。4、创建视图用 CREATE VIEW 语句,修改视图用ALTER VIEW语句,删除视图用DROP VIEW语句。查看视图中的数据用SELECT语句。查看视图的基本信息用sp_helptext存储过程,查看视图的定义信息用 EXEC sp_helptext 存储过程,查看视图的依赖关系用EXEC sp_ depends存储过程。5、说明视图的优缺点。答:优点:(1)视图能简化用户的操作;(2)视

23、图机制可以使用户以不同的方式查询同一数据;(3)视图对数据库重构提供了一定程度的逻辑独立性;(4)视图可以对机密的数据提供安全保护。缺点:(1)降低性能,通过视图查询起来需要花费时间;(2)视图是只读的,更新时需要更新原表,对用户来说很麻烦。6、通过视图修改数据要注意哪些限制?答:对视图进行的修改操作有以下限制:(1)若视图的字段来自表达式或常量,则不允许对该视图执行INSERT和UPDATE操作,但允许执行DELETE操作。(2)若视图的字段来自集合函数,则此视图不允许修改操作。(3)若视图定义中含有GROUP BY 子句,则此视图不允许修改操作。(4)若视图定义中含有DISTINCT短语,

24、则此视图不允许修改操作。(5)一个不允许修改操作视图上定义的视图,也不允许修改操作。第五章:1、什么是批处理?批处理的结束标志是什么?答:批处理就是一个或多个Transact-SQL语句的集合,用GO语句作为一个批处理的结束。2、一些SQL语句不可以放在一个批处理中进行处理,它们需要遵守什么规则?答:一些SQL语句不可以放在一个批处理中进行处理,它们需要遵守以下规则:(1)大多数CREATE命令要在单个批命令中执行,但CREATE DATABASE、CREATE TABLE和CREATE INDEX例外。(2)调用存储过程时,如果它不是批处理中的第一个语句,则在其前面必须加上EXECUTE,或

25、简写为EXEC。(3)不能把规则和默认值绑定到表的字段或用户定义数据类型上之后,在同一个批处理中使用它们。(4)不能在给表字段定义了一个CHECK约束后,在同一个批处理中使用该约束。(5)不能在修改表的字段名后,在同一个批处理中引用该新字段名。3、常量和变量有哪些种类?答:常量有字符串常量、数值常量、日期常量。变量主要有局部变量和全局变量。4、什么是用户自定义函数?它有哪些类型?建立、修改和删除用户自定义函数使用什么命令?答:用户定义的函数是由一个或多个Transact-SQL语句组成的子程序。用户定义的函数类型有标量函数、内嵌表值函数、多语句表值函数。建立、修改、删除用户自定义函数命令分别是

26、CREATE FUNCTION、ALTER FUNCTION和DROP FUNCTION。5、使用游标访问数据包括哪些步骤?答:使用游标访问数据包括的步骤有声明游标、打开游标、从游标中获取数据、关闭游标、释放游标。第六章:1、创建索引的好处主要有哪些?答:创建索引好处主要是加快数据查询和加快表的连接、排序和分组工作。2、按照索引值的特点分类,可将索引分为_惟一_索引和_非惟一_索引;按照索引结构的特点分类,可将索引分为_聚集_索引和_非聚集_索引。3、聚集索引与非聚集索引之间有哪些不同点?答:聚集索引会对表进行物理排序,而非聚集索引不会对表进行物理排序。4、在哪些情况下SQL Server 2

27、005会自动建立索引?这些索引能否用DROP INDEX语句来删除?如果不能,应当用什么方法来删除?答:在创建或修改表时,如果添加了一个主键或惟一键约束,则系统将自动在该表上,以该键值作为索引列,创建一个惟一索引。对于通过主键和唯一约束创建的索引是不能够通过DROP INDEX来删除的。删除方法是通过删除主键约束(或唯一约束)来自动删除由该主键约束(或唯一约束)创建出来的索引。第七章:1、简述使用存储过程有哪些优缺点?答:优点:(1)通过本地存储、代码预编译和缓存技术实现高性能的数据操作。(2)通过通用编程结构和过程重用实现编程框架。如果业务规则发生了变化,可以通过修改存储过程来适应新的业务规

28、则,而不必修改客户端应用程序。(3)通过隔离和加密的方法提高了数据库的安全性。缺点:移植性较差,增加数据库服务器压力。2、创建存储过程有哪些方法?执行存储过程使用什么命令?答:创建存储过程有两种方法,可用通过SQL命令建立或者通过SQL Server Management Studio图形界面建立。执行存储过程使用EXECUTE命令。3、执行存储过程时,在什么情况下可以省略EXECUTE关键字?答:如果存储过程是批处理中的第一条语句,那么不使用   EXECUTE   关键字也可以执行该存储过程。4、说明存储过程重新编译的作用和3种重新编译的方法。答:通过对存储过程进行重新

29、编译,可以重新优化存储过程的执行计划。三种重新编译的方法分别是:1)在创建存储过程时,使用WITH RECOMPILE子句来指示SQL Server 2005不将该存储过程的查询计划保存在缓存中,而是在每次运行时重新编译和优化,并创建新的执行计划。2)通过在执行存储过程时设定重新编译,可以让SQL Server 2005在执行存储过程时重新编译存储过程。3)通过系统存储过程sp_recompile设定重新编译标记,使存储过程和触发器在下次运行时重新编译。5、简述使用触发器有哪些优缺点。答: 优点:(1)多张表的级联修改。触发器能实现各种级联操作,包括数据的修改、插入和删除。(2)强于CHECK

30、的复杂限制。(3)比较数据修改前后的差别。(4)强制表的修改要合乎业务规则。缺点:(1)可移植性是触发器最大的缺点。(2)占用服务器端太多的资源。(3)不能做DDL。(4)触发器排错困难,而且数据容易造成不一致,后期维护不方便。6、说明创建触发器命令中FOR、AFTER、INSTEAD OF各表示什么含义?答:(1)FOR | AFTER。FOR与AFTER同义,指定触发器只有在触发SQL语句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束检查也必须成功完成后,才能执行此触发器,即为后触发。(2)INSTEAD OF。指定执行触发器而不执行造成触发的SQL语句,从而替代造成触发的

31、语句。在表或视图上,每个INSERT、UPDATE或DELETE 语句只能定义一个INSTEAD OF触发器,替代触发。7、TRUNCATE TABLE语句是否会激活DELETE触发器?在触发器中的SQL语句有哪些限制?答:由于TRUNCATE TABLE语句的操作不被记录到事务日志,所以它不会激活DELETE触发器。所有建立和修改数据库及其对象的语句、所有DROP语句都不允许在触发器中使用。第八章:1、什么是备份设备?物理设备标识和逻辑名之间有什么关系?答:备份设备是用来存储数据库、事务日志或文件和文件组备份的存储介质。备份设备可以是硬盘、磁带或管道。物理备份设备指操作系统所标识的磁盘文件、磁带等,逻辑备份设备名是用来标识物理备份设备的别名或公用名称。使用逻辑备份设备名的优点是比引用物理设备名简短。2、4种数据库备份和恢复的方式分别是什么?答:(1)使用SQ

温馨提示

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

评论

0/150

提交评论