数据库课后答案_第1页
数据库课后答案_第2页
数据库课后答案_第3页
数据库课后答案_第4页
数据库课后答案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、第1章习题1、 填空题1. 在数据管理技术发展历程的几个阶段中,在(人工管理)阶段数据不能保存。2. 数据模型由以下三要素组成:(数据结构)、数据操作和数据的约束条件。3. 数据模型按不同的应用层次分成三种类型,它们是:概念数据模型、(逻辑数据模型)、(物理数据模型)。4. E-R模型属于(概念数据)模型,结构数据模型指层次、网状、关系。5. 数据库专家们提出了数据库系统分级的系统结构模型,整个系统分为三级,它们分别是(外模式)、(模式)和(内模式)。2、 选择题1. 在文件系统阶段,操作系统管理数据的基本单位是(A)。A.文件B.记录C.程序D.数据项2. 数据管理技术发展过程中,文件系统与

2、数据库系统的重要区别是数据库具有(C)。A.数据可共享B.数据无冗余3. 在数据库的数据模型中有( A )。A. 网状模型、层次模型、关系模型C.二数值型、字符型、逻辑型C.特定的数据模型D.有专门的数据管理软件B.数字型、字母型、日期型D.数学模型、概念模型、逻辑模型4. 用表格形式的结构表示实体类型以及实体类型之间联系的数据模型是(A)。A.关系数据模型B.层次数据模型C.网状数据模型D.面向对象数据模型5. 描述概念模型的常用方法是(D)。A.建立数据模型方法B.需求分析方法C.二维表方法D.实体联系方法3、 判断题1 .数据库管理员是专门从事数据库设计、管理和维护的工作人员。(2 .计

3、算机的数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。(03 .逻辑数据模型(又称数据模型),它是一种面向客观世界、面向用户的模型;它与具体的数据库系统无关,与具体的计算机平台无关。()4 .数据模型通常由数据结构、数据操作和完整性约束三部分组成。(5 .内模式亦称为子模式或用户模式,描述的是数据的局部逻辑结构。()4、 简答题1解释数据库、数据库管理系统和数据库系统的概念。答:数据库(DataBase)是具有统一结构形式、可共享的、长期储存在计算机内的数据的集合。数据库管理系统(DataBaseManagementSystem)是一组用于数据管理的通用化软件所组成的软件系统,位

4、于用户与操作系统之间,是数据库系统的核心。它负责数据库中的数据组织、数据操纵、数据维护和数据控制等功能的实现。数据库系统(DataBaseSystem)是由数据库、数据库管理系统、数据库管理员和用户等组成的计算机系统的总称。2数据管理经历了哪几个阶段,各阶段的特点是什么?答:数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。人工管理数据有如下特点:(1)数据不保存(2)应用程序管理数据(3)数据不共享(4)数据不具有独立性文件系统管理数据具有如下特点:(1)数据可以长期保存(2)由文件系统管理数据(3)数据共享性差,冗余度大(4)数据独立性低数据库系统管理数据具有如下特点:(1)数

5、据结构化(2)数据共享性好,冗余度低(3)数据独立性高(4)数据由DBMS统一管理和控制3数据库管理系统的主要功能有哪些?答:数据库管理系统的功能主要包括以下六个方面:(1)数据定义数据定义包括定义构成数据库结构的模式、存储模式和外模式,定义各个外模式与模式之间的映射,定义模式与存储模式之间的映射,定义有关的约束条件,例如,为保证数据库中的数据具有正确的语义而定义的完整性规则、为保证数据库安全而定义的用户口令和存取权限等。(2)数据操纵数据操纵包括对数据库数据的检索、插入、修改和删除等基本操作。(3)数据库运行管理对数据库的运行进行管理是DBMS运行时的核心部分,包括对数据库进行并发控制、安全

6、性检查、完整性约束条件的检查和执行、数据库的内部维护(如索引、数据字典的自动维护)等。所有访问数据库的操作都要在这些控制程序的统一管理下进行,以保证数据的安全性、完整性、一致性以及多用户对数据库的并发使用。(4)数据组织、存储和管理数据库中需要存放多种数据,如数据字典、用户数据、存取路径等,DBMS负责分门别类地组织、存储和管理这些数据,确定以何种文件结构和存取方式物理地组织这些数据,如何实现数据之间的联系,以便提高存储空间利用率以及提高随机查找、顺序查找、增、删、改等操作的时间效率。(5)数据库的建立和维护建立数据库包括数据库初始数据的输入与数据转换等。维护数据库包括数据库的转储与恢复、数据

7、库的重组织与重构造、性能的监视与分析等。(6)数据通信接口DBMS需要提供与其他软件系统进行通信的功能。例如,提供与其他DBMS或文件系统的接口,从而能够将数据转换为另一个DBMS或文件系统能够接受的格式,或者接收其他DBMS或文件系统的数据。4试述数据模型及其要素。答:数据模型通常都是由数据结构、数据操作和完整性约束三个要素组成。 数据结构用于描述系统的静态特性,研究与数据类型、内容、性质有关的对象,例如关系模型中的域、属性、关系等。 数据操作数据库主要有检索和更新(如插入、删除、修改)两大类操作。数据模型必须定义这些操作的确切含义、操作符号、操作规则以及实现操作的语言。 数据的约束条件数据

8、的约束条件是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。此外,数据模型还应该提供定义完整性约束条件的机制。5解释实体、属性、码、实体集、E-R模型的概念。答:实体:客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以是抽象的概念或联系。实体的属性:实体所具有的某一特性称为属性。一个实体可以由若干个属性来描述。码:能够唯一标识一个实体的属性或属性组称为实体的码。实体集:同类型实体的集合称为实体集。E-R模型(Entity-Relationshipmodel):

9、也称实体联系模型,是一种被广泛使用的概念模型。该模型将现实世界的要求转化成实体、联系、属性等几个基本概念,以及它们间的基本关系,并且可以用一种图直观的表示出来。第2章习题填空题1.关系数据库系统是支持(关系模型)的数据库系统。3. 关系模型由(关系数据结构)、(关系数据操作)、(关系完整性规则)三部分组成。4. 关系模型定义了(实体完整性)、(参照完整性)、(用户定义的完整性)三类完整性。选择题1. 在关系模型的完整性约束中,实体完整性规则是指关系中(C)属性值不允许为空外键值不允许为空B.允许引用不存在的元组D.允许引用不存在的属性A.不允许有空行B.C.主键值不允许为空D.2. 参照完整性

10、规则要求(A)。A.不允许引用不存在的元组C.不允许引用不存在的属性4. 最常用的一种基本数据模型是关系数据模型,它用统一的(D)结构来表示实体以及实体之间的联系。A.树B.网络C.图D.二维表3、 判断题1 关系语言是一种高度过程化的语言。()2 关系数据语言分为两类,一类是关系数据语言,一类是关系演算语言。()3 实体完整性和参照完整性是关系模型必须满足的完整性约束条件,应该由关系系统自动支持。(,)4 实体完整性规则中,若属性A是基本关系R的主属性,则A也可以取空值。()4、 简答题3. 在关系模型的参照完整性规则中,为什么外部码属性的值也可以为空?什么情况下才可以为空?答:外部码即外码

11、,外码为空表示作为外码的属性没有引用任何值。当外码不是参照关系的主属性时可以取空值。4. 主码、侯选码、外部码的联系和区别是什么?答:主码和候选码都是能唯一标识一个元组的属性或属性组。主码一定是候选码,是候选码中的一个,一个关系只能有一个主码。候选码不一定是主码,一个关系可能有多个候选码。一个关系的外码一定与某个关系的主码相对应,即外码与主码列的数据类型必须匹配,列长度应当相等,列名可以相同也可以不同。当主码的列值被更新时,与之相关联的表的外码列值也将被做相应的更新。当向外码的表中插入数据时,若外码值在与之相关联的表的主码列中不存在时,系统会拒绝插入数据。一个关系的外码一定不是该关系的候选码,

12、也一定不是该关系的主码,但可能是主码的一部分。第4章习题一、填空题1 .SQLServer2000的主要版本有企业版、标准版、个人版、开发版和评估版。2 .启动SQLServer的方法有三种,它们是.通过服务器管理器、企业管理器、控制面板。3 .Transcat-SQL语言主要由5部分组成,分别是数据定义语句、数据操纵语句、数据控制语句、系统存储过程和一些附加的语言元素。4 .在Transcat-SQL语言中,数据操纵语句包括INSERT、DELETE、UPDATE和SELECT。5 .SQLServer2000支持的身份认证模式有Windows身份认证和SQLSERVER身份验证(或混合身份

13、验证)。二、简答题1.SQLServer2000具有哪些特点?答:采用客户/服务器体系结构。提供了丰富的编程接口工具。与Windows2000B作系统完全集成。支持XML(ExtensiveMarkupLanguage)扩展标记语言。提供数据仓库功能。2.SQLServer2000各版本的适用范围是什么?答:企业版:通常用作一个企业级的数据库服务器。它支持数十个T网的数据库。标准版:一般用作工作组或部门级的数据库服务器,支持G改的数据库。个人版:主要用于移动用户。开发版:主要供数据库应用程序开发人员进行应用程序开发并存储数据。评估版:它主要用于测试SQLServer2000的功能。3.SQLS

14、erver2000默认的安装目录是什么?答:MicrosoftSQLServerMSSQL4 .在注册SQLServer2000服务器时,需要提供哪些内容?答:注册服务器时需提供以下内容:被注册的服务器属于哪个组、服务器的名称或地址、登录服务器时使用的验证模式以及登录名和密码。5 .数据定义语句的作用是什么?主要包含哪些语句?答:数据定义语句用于创建、修改或删除数据库以及数据库中的各种对象,包括表、视图、索引、触发器和存储过程等。使用的语句有CREATE、ALTER和DROP。第5章习题一、填空题1 .SQLServer2000安装过程中创建了4个系统数据库,其中_MASTER_数据库控制SQ

15、LServer的所有方面。2 .当数据庞大时,主数据文件的大小超过操作系统对单一文件大小的限制时,必须使用辅助数据文件(或次数据文件)存储数据。3 .主数据文件的扩展名是.mdf。4 .用Transact-SQL语言向表中插入数据的语句是INSERT。5 .用Transact-SQL语言修改表中数据的语句是UPDATE。二、选择题1 .数据库的逻辑结构由各种不同的对象所组成,下面哪些是数据库对象ABD。A.表B.规则C.数据文件D.视图2 .SQLServer2000中有两种类型的数据库:系统数据库和用户数据库,下面哪些是系统数据库ACD。A.modelB.pubsC.masterD.temp

16、db3 .使用Transact-SQL语言创建数据库的语句是C。A.ALTERDATABASEB.DROPDATABASEC.CREATEDATABASED.DBCCSHRINKDATABASE4 .使用Transact-SQL语言创建表的语句是A。A.CREATETABLEB.DROPTABLEC.ALTERTABLED.CREATEDATABASE5 .B数据库是建立所有用户数据库的模板。A.tempdbB.modelC.northwideD.msdb三、判断题1 .在建立数据库时,若将数据文件的大小设置为“文件增长不受限制”,则数据文件可以无限大。()2 .每个数据库至少要包含一个主数据

17、文件和一个日志文件。(V)3 .一个数据文件可以成为多个文件组的成员。()4 .日志文件是独立的,不能放在任何文件组中。(V)5 .收缩数据库仅限于压缩数据库增长的部分,也就是说,数据库最小不能小于创建该数据库时指定的数据库大小。(V)四、简答题1 .数据库在磁盘上是以文件为单位存储的。与数据库相关的磁盘文件有哪三种?他们的扩展名分别是什么?答:与数据库相关的磁盘文件有主数据文件、次数据文件和日志文件三种,扩展名分别是.mdf,.ndf,.ldf.。2 .简述主键的作用是什么?答:主键列中的数据是不允许重复的,也不允许为空值,从而能保证表中数据的唯一性。3 .简述扩充数据库文件大小的几种方法。

18、答:可以通过以下方法扩充数据库文件大小:为数据库添加次数据文件和日志文件;手工修改“分配的空间值”;将数据库文件配置为“文件自动增长”。4 .当修改表结构向表中增加一个新列时,若表中已经添加了记录,应注意些什么?答:当向表中增加一个新列时,若表中已经添加了记录,则SQLServer会在每个记录的该列位置上添加一个数据值。因此当向表中添加一个新列时,最好为该新列定义一个默认值或者设定该列允许为空,否则系统将产生一个错误。5 .简述主键与外键之间的关系。答:外键与主键列的数据类型必须匹配,列长度应当相等,列名可以相同也可以不同。当主键的列值被更新时,与之相关联的表的外键列值也将被做相应的更新。当向

19、外键的表中插入数据时,若外键值在与之相关联的表的主键列中不存在时,系统会拒绝插入数据。第6章习题一、填空题1 .如果想在一个查询中连接多个表(假设是N个),共需要N-1个连接条件。2 .可以使用_Transact-SQL语句_或企业管理器来定义索引。索引分为_聚簇索引和非聚簇索引两大类。其中,在聚簇索引中,行的物理存储顺序与索引顺序完全相同。4 .嵌套查询分为不相关子查询和相关子查询两类,在不相关子查询中,子查询只执行一次。5 .一个表上可以建立一个聚簇索引。6 .视图是一个虚表,它是从基本表或其它视图中导出的表。在数据库中,只存放视图的定义,不存放视图的对应的数据。7 .删除表的定义以及表中

20、的数据和此表上的索引,应该使用的语句是DROPTABLE。1 .以下关于索引的正确叙述是(B)A.使用索引可以提高数据查询速度和数据更新速度B.使用索引可以提高数据查询速度,但会降低数据更新速度C.使用索引可以提高数据查询速度,对数据更新速度没有影响D.使用索引对数据查询速度和数据更新速度均没有影响2 .对视图的描述下列哪个是不正确的(B)A.视图是从一个或几个基本表(或视图)导出的表。B.可以通过任意视图进行数据的更新操作。C.对视图所做的各种操作,都要转化为对基本表的操作D.可以象对基本表一样对视图进行查询操作。3 .数据库中只存放视图的(C)A.操作B.对应的数据C.定义D.限制4 .为

21、了提高查询速度,对订单明细表创建唯一索引,应该创建在哪个(组)属性上?(A)A.(order_cd,product_cd)B.order_cdC.order_cdD.quantity5 .为了考虑安全性,每个客户只能查询自己的订货信息,为此数据库管理员应该考虑建立(A)A.视图B.索引C.游标D.表6 .部分匹配查询中有关通配符“的正确的叙述是(D)A."代表多个字符B.“_”可以代表零个或多个字符C.“_”不能与“%一同使用D.“_”代表一个字符7 .在SELEC喃句中,以下有关ORDERBY子句的叙述中不正确的是(C)A.ORDERBY?句可以对多个列进行排序B.SELECT语句

22、中,ORDERBYR能在所有其它子句之后作为最后一个子句出现C.子查询中也可以使用ORDERB评句D.在视图中不能使用ORDERB仔句8 .在分组检索中,要去掉不满足条件的分组和不满足条件的记录,应当(D)A.使用WHEREF句B.先使用HAVING?句,再使用WHER皆句C.使用HAVING?句D.先使用WHERE句,再使用HAVING?句第9-10题基于学生-课程数据库中的三个基本表:学生信息表:s(sno,sname,sex,age,dept)主码为sno课程信息表:c(cno,cname,teacher)主码为cno主码为 (sno, cno)SQL语句是(C)学生选课信息表:sc(s

23、no,cno,grade)9 “从学生选课信息表中找出无成绩的元组”的A. SELECT*FROMscWHEREgrade=NULLB. SELECT*FROMscWHEREgradeISC. SELECT*FROMscWHEREgradeISNULLD. SELECT*FROMscWHEREgrade=10.在“查询选修课程号为4,且成绩在80分以上的所有学生的学号和姓名”的SQL语句中,将使用的表是(D)A. 学生信息表SB. 学生信息表S和课程信息表CC.学生信息表S课程信息表C和学生选课信息表SCD. 学生信息表S和学生选课信息表SC三、判断题1.任何人都可以对表建立索引。()2.如果

24、在视图定义中使用了WITHCHECKOPTION?句,则所有在视图上执行的数据修改语句都必须符合定义视图的SELECT语句中所设定的条件。(,)3.不能通过视图修改那些通过计算得到的字段。(,)4 .可以通过DROPVIEW时删除视图v2_products和v1_customers。(V)5 .Transact-SQL不直接支持交操作和差操作。(,)四、操作题1. 用Transact-SQL命令为表订单(orders)中的列“订单编号”建立索引。CREATEINDEXidx_order_cdONorders(order_cd)2. 用连接查询方式查询“东风电力有限公司”订购的“电器类”商品的商

25、品名称、订货日期和交货地点。SELECTproduct_nm,ORDER_DT,CITYFROMorders,categories,customers,productsWHEREduct_cd=duct_cdANDorders.customer_cd=customers.customer_cdANDproducts.category_cd=categories.category_cdANDcustomer_nm='东风电力有限公司'ANDcategory_nm='电器'3. 用JOIN查询方式查询都有哪些客户订购了“日

26、常用品类”商品的客户名称、订单编号和交货日期。SELECTcustomer_nm,orders.order_cd,order_dtFROMcustomersJOINordersONorders.customer_cd=customers.customer_cdJOINdetailsONorders.order_cd=details.order_cdJOINproductsONduct_cd=duct_cdJOINcategoriesONproducts.category_cd=categories.category_cdWHEREcategory_

27、nm='日常用品'4. 创建一个视图,视图中包括所有在上海交货的商品名称、价格、订单编号和数量。CREATEVIEWv_shanghaiAS(SELECTproduct_nm,price,order_cd,quantityFROMproducts,details,ordersWHEREduct_cd=duct_cdANDdetails.order_cd=orders.order_cdANDcity='上海')5. 删除上题中创建的视图。DROPVIEWv_shanghai;6查询每个客户订购的各种商品数量。SELEC

28、Tcustomer_cd,product_cd,SUM(quantity)FROMorders,detailsWHEREorders.order_cd=details.order_cdGROUPBYcustomer_cd,product_cd;( 1) 在查询分析器中用Insertinto命令向Course表中插入一个元组(00009,09,系统分析与设计,3,54,00004,五年级)能否执行成功,为什么?答:不能执行成功。因为违反了参照完整性规则,新插入的元组中的课程类别代码CTno的值为09,但课程类别表中没有CTno是09的课程类别信息。( 2) 在企业管理器中通过“修改表结构”的方式

29、删除CTno上建立的外键约束,再向Course表中插入一个元组(00009,09,系统分析与设计,3,54,00004,五年级)能否执行成功,为什么?答:能够执行成功。因为课程表的CTno属性上的外码删除掉了,系统不会检查课程表中的CTno属性上的值是否违反了参照完整性规则,因为只有建立外码后数据库管理系统才会检查外码属性的值是否违反了参照完整性规则。( 3) 重新将Course表的CTno建立为外码然后保存该修改,能否执行成功,为什么?答:不能执行成功。因为课程表中的CTno属性上有违反参照完整性规则的值(09)存在,而课程类别表中没有CTno是09的课程类别信息。,( 4) 查看所有教师的

30、信息;SELECT*FROMTEACHER;( 5) 查询所有教师的姓名和年薪,并且将输出结果中的列名显示为“姓名”、“年薪”、“币种单位”,其中币种单位的值为“元”;SELECTTNAME,12*SALAS年薪,元as币种单位FROMTEACHER;( 6) 通过以下两组SQL语句,看结果有何区别;SELECTSNOFROMSC;该查询结果中没有去掉重复的行SELECTDISTINCTSNOFROMSC;该查询结果中去掉了重复的行( 7) 查询1984年和1985年出生的女生的信息;SELECT*FROMSTUDENTWHEREYEAR(SBIR)IN(1984,1985)andSSEX=女或SELECT*FROMSTUDENTWHEREYEAR(SBIR)BETWEEN1984AND1985andSSEX=女( 8) 查询0001部门、0003部门或0004部门的职工的信息;SELECT*FROMTEACHERWHEREDNOIN(0001,0003,0004);( 9) 查询姓王的同学的信息;SELECT*FROMSTUDENTWHERESNAMELIKE王%;( 10) 查询学生04002选修的所有课程的成绩

温馨提示

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

评论

0/150

提交评论