当前位置:文档之家› 数据库原理课后题答案

数据库原理课后题答案

数据库原理课后题答案第1章1.试述数据、数据库、数据库系统、数据库管理系统的概念。

答:(1)数据:描述事物的符号记录成为数据。

数据的种类有数字、文字、图形、图像、声音、正文等。

数据与其语义是不可分的。

(2)数据库:数据库是长期储存在计算机内的、有组织的、可共享的数据集合。

数据库中的数据按照一定的数据模型组织。

描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

(3)数据库系统:数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发人具)、应用系统、数据库管理员构成。

(4)数据库管理系统:数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。

DBMS的主要功能包括数据定义功能、数据操作功能、数据库的建立和维护功能。

6.试述数据库系统三级模式结构,这种结构的优点是什么?答:数据库系统的三级模式机构由外模式、模式和内模式组成。

外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

模式亦称逻辑模式,是数据库中全体数据呃逻辑结构和特征的描述,是所有用户的公共数据视图。

模式描述的是数据的全局逻辑结构。

外模式涉及的是数据的内部逻辑结构,通常是模式的子集。

内模式,亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。

数据库系统的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。

为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式∕模式映像和模式∕内模式映像。

正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

7.定义并解释下列术语。

外模式:亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

内模式:亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。

模式:亦称逻辑模式,是数据库中全体数据逻辑结构和特征的描述,是所有用户的公共数据视图。

模式描述的是数据的全局逻辑结构。

外模式涉及的是数据的内部逻辑结构,通常是模式的子集。

DDL:数据库定义语言,用来定义数据库模式、外模式、内模式的语言。

DML:数据操纵语言,用来对数据库中数据进行查询、插入、删除和修改的语句。

8.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员各个外模式∕模式的映像做相应改变,可以使外模式保持不变。

应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

数据与程序的物理独立性:当数据库的存储结构改变了,有数据库管理员对模式∕内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。

数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据具有较高的逻辑独立性和物理独立性。

第2章数据模型3.试描述数据模型的三个要素。

数据模型由数据结构、数据操作和完整性约束三部分组成。

(1)数据结构:是所研究的对象类型的集合,是对系统静态特性的描述。

(2)数据操作:是对数据库中各种对象(型)的实例(值)允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。

(3)数据的约束条件: 是一组完整性规则的集合。

完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。

7.试述关系模型的概念,定义并解释以下术语。

答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。

(1)关系:一个关系对应通常说法的一张表(2)关系模式:对关系的描述,一般表示为:关系名(属性1,属性2,…,属性n)(3)元祖:表中的一行即为一个元组(4)属性:表中的一列即为一个属性(5)码:表中的某个属性组,它可以惟一确定一个元组(6)域:属性的取值范围(7)分量:元组中的一个属性值第3章关系数据库3.定义并理解下列术语,说明它们之间的联系与区别。

(1)域:域是一组具有相同数据类型的值的集合;笛卡儿积:给定一组域D1,D2,…,Dn,这些域中可以有相同的。

D1,D2,…,Dn的笛卡尔积为:D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n} 其中每一个元素(d1,d2,…,dn)叫做一个n元组或简称元组。

元素中的每一个值di叫做一个分量。

关系:在域D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn的子集称为关系,表示为R(D1,D2,…Dn)元组:关系中的每个元素是关系中的元组。

属性:关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。

由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性。

(2)候选码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性SPJ四个关系模式:S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。

今有若干数据如下:S表P 表PNO PNAME COLOR WEIGHT P1 螺母 红 12 P2 螺栓 绿 17 P3 螺丝刀 蓝 14 P4 螺丝刀 红 14 P5 凸轮 蓝 40 P6齿轮红30J 表JNO JNAME CITY J1三建北京SNO SNAM ESTAT USCITYS1 精益 20 天津 S2 盛锡 10 北京 S3 东方红 30 北京S4 丰泰盛20 天津 S5 为民 30 上海J2 一汽长春J3 弹簧厂天津J4 造船厂天津J5 机车厂唐山J6 无线电厂常州J7 半导体厂南京SPJ表SNO PNO JNO QTY S1 P1 J1 200 S1 P1 J3 100 S1 P1 J4 700 S1 P2 J2 100 S2 P3 J1 400 S2 P3 J2 200 S2 P3 J4 500 S2 P3 J5 400 S2 P5 J1 400 S2 P5 J2 100 S3 P1 J1 200 S3 P3 J1 200 S4 P5 J1 100 S4 P6 J3 300S4 P6 J4 200S5 P2 J4 100S5 P3 J1 200S5 P6 J2 200S5 P6 J4 500试分别用关系代数完成如下查询:(1)求供应工程J1零件的供应商号SNO;答关系代数πSNO(σJNO=’J1’ ( SPJ))(2)求供应工程J1零件P1的供应商号 SNO; 答关系代数πSNO(σJNO=’J1’⋀ PNO=’P1’(SPJ))(3)求供应工程J1零件为红色的供应商号SNO;答关系代数πSNO(πSNO,PNO(σJNO=’J1’(SPJ)) ⋈πPNO(σCOLOR=’红’(P)))(4)求没有使用天津供应商生产的红色零件的工程号 JNO;答关系代数πJNO(J)-πJNO(πSNO(σCITY=’天津’(S)) ⋈πSNO,PN0,JNO(SPJ)πPNO(σCOLOR=’红’(P)))解析减法运算中被减的部分是使用了天津供应商生产的红色零件的所有工程号,πJNO(J)是全部工程的工程号,两者相减就是没有使用天津供应商生出的红色零件的工程号,包括没有使用任何零件的工程号。

(5)求至少用了S1供应商所供应的全部零件的工程号JNO;答关系代数πJNO,PNO(SPJ)÷πPNO(σSNO=’s1’(SPJ)) 解析上面公式中除号前的部分是所有工程与该工程所用的零件,除号后的部分是S1所供应的全部零件号。

对于SPJ表中的某一个JNO,如果该工程使用的所有零件的集合包含S1所供应的全部零件号,则该JNO符合本题条件,在除法运算的结果集中。

可以看到,使用关系代数的除法运算概念清晰,语言表达也很简单。

7.关系代数的基本运算有哪些?选择、投影、并、差和笛卡儿积五种。

第4章关系数据库的标准语言SQL5.针对习题3中的4个表试用SQL完成如下操作。

(1)找出所有供应商的姓名和所在的城市。

SELECT SNAME,CITYFROM S;(5)找出上海厂同提供的所有零件号码SELECT DISTINCT PNOFROM SPJ WHERE SNO IN(SELECT SNO FROM S WHERE CITY=‘上海’);(8)把所有红色的零件的颜色改成蓝色UPDATE P SET COLOR=’蓝’ WHERE COLOR=’红’(10)从供应商的关系中删除S2的记录,并从供应关系中删除相应记录。

DELETE FROM SPJ WHERE SNO=‘2’;DELETE FROM S WHERE SNO=‘S2’;6.什么是基本表?什么是视图?两者的区别和联系是什么?基本表是本身独立存在的表。

视图是人一个或几个基本表导出的表。

视图本身不独立存储在数据库中,是一个虚表。

即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。

用户可以如同基本表那样使用视图,可以在视图上再定义视图。

7.试述视图的优点。

1)视图能简化用户的操作;2)视图使用户能以多种角度看待同一数据;3)视图对重构数据库提供了一定程度的逻辑独立性;4)视图能够对机密数据提供安全保护。

9.哪类视图是可以更新的?基本表的行列子集视图是可以更新的。

第5章数据库的安全性1什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露,更改过破坏。

相关主题