数据库系统作业1-3章

更新时间:2024-03-02 16:59:06 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《数据库系统》作业

要求所有作业必须手写完成,不可打印,复印

第一章作业:

1、 解释下列术语:数据,数据库,数据库系统,数据库管理系统 答:( l )数据( Data ) :描述事物的符号记录称为数据。

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

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

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

2、 试述数据库系统的主要特点。

答:( l )数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。

( 2 )数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,因此可以被多个用户、多个应用以多种不同的语言共享使用。

( 3 )数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。

( 4 )数据由 DBMS 统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。

3、 试述数据库系统的三级模式结构及每级模式的作用?

答:数据库系统的三级模式结构是指数据库系统是由外模式,模式,和内模式三级构成。 作用:

模式是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。 外模式是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是某一应用有关的数据的逻辑表示。

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

4、 什么是数据的独立性?数据库系统中为什么能具有数据独立性?

答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序

第 1 页 共 11 页

也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

5、 解释下列术语。

实体、实体型、实体集、属性、码、实体联系图(E-R图)。

答:

实体:客观存在并可以相互区分的事物叫实体。实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。实体集:同型实体的集合称为实体集。属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。码:惟一标识实体的属性集称为码。实体联系图( E 一 R 图):提供了表示实体型、属性和联系的方法: · 实体型:用矩形表示,矩形框内写明实体名; · 属性:用椭圆形表示,并用无向边将其与相应的实体连接起来; · 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型( 1 : 1 , 1 : n 或 m : n )。

6、 试述数据模型的概念、数据模型的作用和数据模型的三个要素。 答:

数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。一般地讲,数据模型是严格定义的概念的集合。这些概念精确描述了系统的静态特性、动态特性和完整性约束条件。因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。

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

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

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

7、 学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教师,其中一些教授

和副教授每人各带若干研究生。每个班有若干学主,每个学生选修若干课程,每门课可由若干学生选修。用E-R图画出此学校的概念模型。 答:

第 2 页 共 11 页

8、 用二维表结构表示实体以及实体间联系的数据模型称为___C___。 A. 网状模型 B. 层次模型

C. 关系模型 D. 面向对象模型 9、 在下面所列出的条目中 哪些是数据库管理系统的基本功能___C___。 A. 数据库定义 B. 数据库的建立和维护

C. 数据库存取 D. 数据库和网络中其他软件系统的通信 10、 在数据库的三级模式结构中,内模式有__C____。

A. 1个 B. 2个 C. 3个 D. 任意多个 11、

数据库的概念模型独立于 B 。

A.具体的机器和DBMS B.E-R图 C.信息世界 D.现实世界

第 3 页 共 11 页

第二章作业:

1、 解释下列术语。

1)主码、候选码、外码。

主码:表中的某个属性组,它可以惟一确定一个元组;

候选码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码。 外码:某个关系的主码相应的属性在另一关系中出现,此时该主码在就是另一关系的外码

2)笛卡尔积、关系、元组、属性、域。 笛卡尔积:是域上面的一种集合运算。 关系:一个关系对应通常说的一张表。 元组:表中的一行即为一个元组。 属性:表中的一列即为一个属性。 域:属性的取值范围。

3)关系、关系模式、关系数据库。 关系:一个关系对应通常说的一张表。

关系模式:对关系的描述,一般表示为关系名(属性 1 ,属性 2 , … ,属性 n ) 关系数据库:在一个给定的应用领域中,所有实体及实体之间联系的关系的集合构成一个关系数据库。

2、 有关系:R(A,B,C)(主码为A)和S(D,A)(主码为D,外码为A)外码A参照于关系R的主码A属性。关系R和S的元组如图所示,指出关系S中违反完整性规则

的元组是 BC 。 A.(1,2) B.(2,null) C.(3,3) D.(4,1)

关系R A 1 2

关系S

D 1 2 3 4

第 4 页 共 11 页

B 2 1 C 3 3 A 2 NULL 3 1 3、设有如下图所示的关系R,W和D,计算下列代数表达式的结果: (1)R1=?Y,T(R)

(2)R2=?P?5?T?'e'(R) (3)(4)

R3?R??W

R5?R?D 关系R P Q 2 b 9 a 2 b 9 a 7 g 7 g 关系W T c c d T c e e d e c Y d f f e f d

Y d d f B m n n

关系D T c e Y d f

4、设有如下图所示的关系S,SC,C,试用关系代数表达式表示下列查询语句:

关系S S# SNAME AGE SEX 1 李强 23 男 2 刘丽 22 女 3 张友 22 男 关系C C# CNAME TEACHER K1 C语言 王华 K5 数据库原理 程军 第 5 页 共 11 页

K8

编译原理 程军 关系SC S# C# GRADE 1 K1 83 2 K1 85 5 K1 92 2 K5 90 5 K5 84 5 K8 80 (1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。 Select C#,CNAME from 关系C where Teacher = ‘程军’

(2)检索“李强”同学不学课程的课程号。 Select C# from 关系C where not exists ( Select C# from 关系SC sc inner join 关系S s on sc.C#=s.C# Where sname=’李强’)

(3)检索选修课程号为K1和K5的学生学号(S#)。 Select S# from 关系SC where C# in (‘K1’,’K5’)

(4)检索选修全部课程的学生姓名(SNAME)。 Select SName from 关系S s inner join 关系SC sc on s.S#=SC.S# Where C# in (select C# from 关系C) ?

(5)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。 Select S#,SName from 关系S inner join 关系SC sc on sc.S#=s.S# Inner join 关系C c on sc.C#=c.C# where CName=’C语言’

第 6 页 共 11 页

第三章作业:

1、 设有学生表S(SNO,SNAME)和学生选修课程表SC(SNO,CNO,GRADE),试用

SQL语句完成以下操作:

(1)建立一个视图V-SSC(SNO,SNAME,CNO,GRADE),并按CNO升序排序

Create view V-SSC(SNO,SNAME,CNO,GRADE)

As

Select s.sno,sname,cno,grade from 表S s inner join 表SC sc on s.sno=sc.sno Order by cno asc

(2)从视图V-SSC上查询平均成绩在90分以上的SNAME,CNO,和GRADE

Select sname,cno,grade from V-SSC where grade >90

2、 设有如下4个关系模式:

书店(书店编号,书店名,地址) 图书(图书编号,图书名,定价)

出版社(出版社编号,出版社名,所在城市,电话) 图书发行(出版社编号,图书编号,书店编号,数量),表示出版社给某个特定书店发行的某本图书的数量。

请回答下列问题:

(1)用SQL语句检索已经发行的图书中最贵的书名和定价

Select top 1 书名,max(定价) from 图书 t inner join 图书发行 f on t.图书编号=f.图书编号

(2)写出下列SQL语句所表达的中文含义:

SELECT 出版社名

FROM 出版社

WHERE 出版社编号IN

(SELECT 出版社编号 FROM 图书发行

WHERE 图书编号 IN (SELECT 图书编号 FROM 图书

WHERE 图书名=‘数据库系统基础’) 检索已经发行的图书中书名为“数据库系统基础”的出版社名

3、 设有4个关系模式:

S(SNO,SNAME,CITY):S为供应商,属性依次为:供应商号、供应商名、所在城市;

P(PNO,PNAME,COLOR,WEIGHT,PRICE):P表示零件,属性依次为:零件号、零件名、零件颜色、零件重量和单价; J(JNO,JNAME,CITY):J表示工程,属性依次为: 工程号、工程名、所在城市; SPJ(SNO,PNO,JNO,QTY):SPJ表示供货关系,属性依次为:供应商号、零件号、工程号和供货数量;

用SQL语句实现下面的操作:

第 7 页 共 11 页

(1) 查询供应红色零件的供应商名。

Select SName from S inner join SPJ on S.sno=SPJ.sno Inner join P on SPJ.pno=P.pno Where color=’红色’

(2) 查询没有使用天津供应商供应的零件的工程号。

Select Jno from SPJ where not exists

(select distinct Jno from SPJ inner join S on SPJ.sno=S.sno

Where city=’天津’)

(3) 将由供应商S5供给工程号为J4的零件P6改为由S3供应。

Update SPJ set sno=(select sno from S where sname=’S3’) where sno= (select sno from S where sname=’S5’) and jno=’J4’ and PNO= (select pno from P where pname=’P6’)

4、关于教学数据库的关系模式如下:

S(S#,SNAME,AGE,SEX):S表示学生,各属性依次为:学号、姓名、年龄、

性别

SC(S#,C#,GRADE):SC表示成绩,各属性依次为:学号、课程号、成绩

C(C#,CNAME,TEACHER)C表示课程,各属性依次为:课程号、课程名、教师

试用SQL语句完成下列查询:

(1)检索年龄大于22岁的男学生的学号和姓名 Select S#,sname from S where age>22 and sex=’男’ (2)检索张平同学不学的课程的课程号

Select C# from C where not exists

(select C# from SC inner join S on S.S#=SC.S# where sname=’张平’)

(3)所有成绩都在80分以上的学生姓名; ....

Select Sname from S inner join SC on S.s#=sc.s# where grade>80 (4)至少选修两门以上课程的学生姓名、性别;

Select sname,sex from S where S# in

( select S# from SC group by S# having count(C#)>1)

第 8 页 共 11 页

第五章作业:

1、 解释下列术语。

函数依赖、部分函数依赖、完全函数依赖、传递函数依赖、1NF、2NF、3NF、BCNF。 2、 设有关系如下:

关系r

A A1 A1 A1 A2 A2

⑴ 找出关系r上的所有侯选键。 ⑵ 分析关系r最高为哪一级范式。

⑶ 将关系r无损分解为若干个3NF的关系集。

3、 根据3NF的定义及规范化方法,对如下关系模式R(U,F)进行分解。使其满足3NF。其

中:

U={学号,姓名,所在系,系主任,课程号,成绩}

F= {学号→姓名,学号→所在系,所在系→系主任,(学号,课程号)→成绩}。

4、 假设某商业集团数据库中有一关系模式R如下:

R (商店编号,商品编号,库存数量,部门编号,负责人) 如果规定:(1) 每个商店的每种商品只在一个部门销售; (2) 每个商店的每个部门只有一个负责人; (3) 每个商店的每种商品只有一个库存数量。 试回答下列问题:

(1) 根据上述规定,写出关系模式R的基本函数依赖; (2) 找出关系模式R的候选码;

(3) 试问关系模式R最高已经达到第几范式?为什么?

(4)如果R不属于3NF,请将R分解成3NF模式集。

B B1 B2 B3 B1 B2 C C1 C1 C2 C1 C3 D D1 D1 D1 D1 D2 r

第 9 页 共 11 页

第六章作业:

1、 有一个应用系统的数据库包括三个实体集。 一个是“商店”实体集,其属性有:商店

编号,店名,店址,店经理。 一个是“会员”实体集,其属性有:会员编号,会员名,地址。 一个是“职工”实体集,其属性有:职工编号,职工名,性别,工资。 每家商店有若干职工,但每个职工只能服务于一家商店。 每家商店有若干会员,每个会员可以属于多家商店。在联系中应反映出职工参加某商店工作的开始时间,会员的加入时间。

(1) 根据上述语义画出E-R图,在E-R图中需注明实体型的属性、联系的类型及实体型

的标识符。

(2) 将E-R图转换成关系模型,并指出每个关系模式的主键和外键。 (3) 分析每个关系模式已经达到的最高范式。

2、进行数据库系统需求分析时,数据字典的内容和作用是什么?

第 10 页 共 11 页

第七章----第十章作业:

1、 什么是“死锁”?在系统发生死锁时,系统如何处理?

2、 如果数据库系统对事务的并发操作不加控制,有可能带来哪些问题?

3、 什么是日志文件?登记日志文件时为什么必须要先写日志文件,后写数据库? 4、 设有两个事务T1,T2,其并发操作如下图所示,指出这个并发操作引起的问题是什么?

原因何在?

T1 (1) 读 A=100 写 A=A*2 (2) (3) ROLLBACK A恢复为100 件号”,P的外键是“供应商号”。

T2 读 A=200 5、 设有供应商关系S和零件关系P,如图所示,S和P的主键分别是“供应商号”和“零

分析下列4个操作能否被正确执行,并说明理由。 (1) 在P中插入元组(′P2′,′白′,′A2′) (2) 在P中插入元组(NULL,′绿′,′A1′) (3) 在P中插入元组(′P4′,′白′,′A5′) (4) 在P中插入元组(′P4′,′绿′,′A2′)

第 11 页 共 11 页

本文来源:https://www.bwwdw.com/article/7tfa.html

Top