数据库系统原理与应用课后习题孟彩霞版讲义

上传人:今*** 文档编号:107196137 上传时间:2019-10-18 格式:PPT 页数:35 大小:436.50KB
返回 下载 相关 举报
数据库系统原理与应用课后习题孟彩霞版讲义_第1页
第1页 / 共35页
数据库系统原理与应用课后习题孟彩霞版讲义_第2页
第2页 / 共35页
数据库系统原理与应用课后习题孟彩霞版讲义_第3页
第3页 / 共35页
数据库系统原理与应用课后习题孟彩霞版讲义_第4页
第4页 / 共35页
数据库系统原理与应用课后习题孟彩霞版讲义_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《数据库系统原理与应用课后习题孟彩霞版讲义》由会员分享,可在线阅读,更多相关《数据库系统原理与应用课后习题孟彩霞版讲义(35页珍藏版)》请在金锄头文库上搜索。

1、1,SQL Server 2000 数据库系统原理与应用 习题课,2,第一章 数据库系统概述,4. 使用数据库系统有什么优点? 数据结构化 数据的共享性高、冗余度低、易扩充 数据独立性高 DBMS对数据进行统一的管理和控制 6. 数据库管理系统的主要功能有哪些? 数据定义功能 数据操纵功能 数据库的事务管理和运行管理 数据库的建立和维护功能 其他功能 9. 简述数据库系统的三级模式结构,这种结构的优点是什么? 模式(逻辑模式):模式结构的中间层,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。,3, 外模式(用户模式):是数据库用户能够看见和使用的局部数据的逻辑结构和特征的

2、描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 内模式(存储模式):是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。 优点:三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。 10. 什么是数据库的逻辑独立性、物理独立性?为什么数据库系统具有数据与程序的独立性? 逻辑独立性:当模式改变时,由DBA对各个外模式/模式作相应改变,从而保持外模式不变。因此依据外模式所编写的应用程序也可以不必改变。 物理独立性:当数据库的存储结构改变时,由数据库管理员对模式/内模式映像作

3、相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性。 原因:数据库之所以能够具有数据与程序的独立性,是由两级映射所提供的逻辑独立性和物理独立性所保证的。,4,11. 什么是数据模型?其作用和三要素是什么? 数据模型是对现实世界数据特征的抽象。 作用:用来描述数据、组织数据和对数据进行操作的。 三要素:数据结构、数据操作、数据的完整性约束条件,5,15学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。请用E-R图画出此学校的概念模型。,6,16某工厂生产若干产品,每种产品由不同的零件组成

4、,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用E-R图画出此工厂产品,零件,材料,仓库的概念模型。 17.某百货公司有若干个连锁商店,每家商店经营若干商品,每家商店有若干职工,每个职工只能服务于一家商店。试描述该百货公司的E-R图。,7,第二章 关系数据库,2. 解释概念 关系(Relation)笛卡尔积D1D2Dn的有限子集叫作在域D1,D2,Dn上的n元关系,简称关系。通常表示为 R(D1,D2,Dn) 其中,R为关系名,n为关系的目或度。 关系模式(Relation Sche

5、ma)关系的描述称为关系模式。它可以形式化地表示为 R(U,D,DOM,F) 其中,R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映象集合,F为属性间数据的依赖关系集合。 关系数据库在一个给定的应用领域,所有实体和实体之间联系的集合构成一个关系数据库。 主键(Primary key)若关系有多个候选键,则选定其中一个为主键。 候选键(Candidate key)若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选组。 外键(Foreign Key)设F是关系R的一个或一组属性,但不是关系R的键。如果F与关系S的主键相对应,则称F是R的外键,

6、并称R为参照关系,S为被参照关系或目标关系。 主属性(Primary attribute)候选键的诸属性称为主属性。,8,3. 关系的性质 任意两个元组不能完全相同 关系中元组的次序是不重要的,次序可以任意交换 关系中属性的次序是不重要的,次序可以任意交换 同一列中的分量必须来自同一个域,是同一类型的数据 属性必须有不同的名称,不同的属性可以出自相同的域 每一分量必须取原子量 6. 关系数据语言的特点和分类 特点:具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。 分类:关系代数语言、关系演算语言(元组关系演算语言、域关系演算语言)、具有关系代数和关系演算双重特点的

7、语言,如SQL 7. 关系模型的完整性规则?在参照完整性中,为什么外键属性的值也可以为空? 什么情况下才可以为空? 实体完整性规则:关系中的元组在主属性上不能有空值; 参照完整性规则:外键得知不允许参照不存在的相应表的主键的值;,9,用户定义的完整性规则:用户根据具体应用的语义定义的完整性规则。 当外键非本表的主键(属性)时可以取空值。 实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。 参照完整性规则若属性(或属性组)F是基本关系R的外键,它与基本关系S的主键相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值)

8、;或者等于S中某个元组的主键值。即属性F本身不是主属性,则可以取空值,否则不能取空值。 当属性F的每个属性值为“不知道”或“不存在”的值时,即外键可以为空。,10,第三章 关系数据库标准语言SQL,1. SQL具有哪些特点? 综合统一 高度非过程化 面向集合的操作方式 以同一种语法结构提供多种使用方式 语言简洁,易学易用 3.建立chap2习题10的各表,包括主键和外键 CREATE TABLE S ( sno char(6) primary key, sname char(20), status int, city char(20) ); CREATE TABLE P ( pno char(

9、6) primary key, pname char(20), color char(10), weight real real数值型数据 );,11,CREATE TABLE J ( jno char(6) primary key, jname char(40), city char(20) ); CREATE TABLE SPJ ( sno char(6) foreign key references S(sno), /*sno为外键,参照S表中的sno*/ pno char(6) foreign key references P(pno), /*pno为外键,参照P表中的pno*/ jn

10、o char(6) foreign key references J(jno), /*jno为外键,参照J表中的jno*/ qty int, primary key (sno, pno,jno) ); 4 .在第3题所建的表中完成下列操作 (1)求供应工程J1零件的供应商号码SNO: select sno from SPJ where jno=J1; (2)求供应工程J1零件P1的供应商号码SNO: select sno from SPJ where jno=J1 and pno=P1;,12,(3)求供应工程J1零件为红色的供应商号码SNO: select sno from SPJ wher

11、e jno=J1 and pno in (select pno from P where color=红); 或: select sno from SPJ,P where SPJ.pno=P.pno and SPJ.jno=J1 and P.color=红; (4)求没有使用天津供应商生产的红色零件的工程号JNO: (此解使用不相关子查询方法) select jno from J where jno not in (select jno from SPJ,S,P where SPJ.sno=S.sno and SPJ.pno=P.pno and city=天津 and color=红);,13

12、,(5)求至少使用了供应商S1所供应的全部零件的工程号 JNO: 将查询分为两步 A、查询S1供应商供应的零件号 SELECT DIST PNO FROM SPJ WHERE SNO=S1 结果是(P1,P2) B、查询哪一个工程既使用P1零件又使用P2零件。 SELECT JNO FROM SPJ WHERE PNO=P1 AND JNO IN (SELECT JNO FROM SPJ WHERE PNO=P2) 5. 建立market 库中的3个表 CREATE TABLE customers ( customerid char(6) primary key, cname char(20)

13、, city char(10); CREATE TABLE goods ( goodid char(6) primary key, gname char(20), price real, provider char(20), stocks int, status int );,14,CREATE TABLE orders ( orderid char(6) primary key, goodid char(6) foreign key references goods(goodid), customerid char(6) foreign key references customers(cu

14、stomerid), quantity int, ordersum real, date datetime ); 6.针对market数据库完成下列操作 (1) 查找所有上海客户的信息 Select * from customers where city=shanghai; (2) 查找所有商品的名称、库存量、价格及折价25%后的价格,并使用别名discount标识折扣价。结果按价格由低到高排序 Select gname,stocks,price,price*0.75 Discount from goods order by price;,15,(3) 查找商品名中包含computer的商品编

15、号、名称及价格 Select goodid,gname,price from goods where gname like %computer%; (4) 查找库存量大于100小于500的商品名称、库存量和单价 Select stocks,gname,price from goods where stocks between 100 and 500; (5)查找2007.7.1至2007.12.31期间,订货金额大于30000的所有订单的客户姓名、商品名称、单价、订货数量和订货金额 Select cname,gname,price,quantity,ordersum from customers,goods,orders where customers. customerid=orders. customerid and goods. goodid=orders. goodid and date between2007-7-1and 2007-12-31 and ordersum30000; (6) 查找订单编号、商品编号、和客户编号,要求按日期对订单进行分组,并只显示订货数量超过200的订单信息,16,Select customerid, goodid, orderid from orders where quantity200 order by date; 不是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号