数据库系统原理与应用课后习题孟彩霞版.ppt
《数据库系统原理与应用课后习题孟彩霞版.ppt》由会员分享,可在线阅读,更多相关《数据库系统原理与应用课后习题孟彩霞版.ppt(35页珍藏版)》请在冰豆网上搜索。
![数据库系统原理与应用课后习题孟彩霞版.ppt](https://file1.bdocx.com/fileroot1/2022-10/22/a02dd358-e3a0-4c2f-862b-0fc640dec6ec/a02dd358-e3a0-4c2f-862b-0fc640dec6ec1.gif)
返回返回SQLServer2000SQLServer2000数据库系统原理与应用数据库系统原理与应用习题课习题课1返回返回第一章第一章数据库系统概述数据库系统概述4.使用数据库系统有什么优点?
使用数据库系统有什么优点?
数据结构化数据的共享性高、冗余度低、易扩充数据独立性高DBMS对数据进行统一的管理和控制6.数据库管理系统的主要功能有哪些?
数据库管理系统的主要功能有哪些?
数据定义功能数据操纵功能数据库的事务管理和运行管理数据库的建立和维护功能其他功能9.简述数据库系统的三级模式结构,这种结构的优点是什么?
简述数据库系统的三级模式结构,这种结构的优点是什么?
模式(逻辑模式):
模式(逻辑模式):
模式结构的中间层,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
2返回返回外模式(用户模式):
外模式(用户模式):
是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
内模式(存储模式):
内模式(存储模式):
是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
优点:
优点:
三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。
10.什么是数据库的逻辑独立性、物理独立性?
为什么数据库系统什么是数据库的逻辑独立性、物理独立性?
为什么数据库系统具有数据与程序的独立性具有数据与程序的独立性?
逻辑独立性:
逻辑独立性:
当模式改变时,由DBA对各个外模式/模式作相应改变,从而保持外模式不变。
因此依据外模式所编写的应用程序也可以不必改变。
物理独立性物理独立性:
当数据库的存储结构改变时,由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性。
原因:
原因:
数据库之所以能够具有数据与程序的独立性,是由两级映射所提供的逻辑独立性和物理独立性所保证的。
3返回返回11.什么是数据模型?
其作用和三要素是什么?
什么是数据模型?
其作用和三要素是什么?
数据模型数据模型是对现实世界数据特征的抽象。
作用:
作用:
用来描述数据、组织数据和对数据进行操作的。
三要素:
三要素:
数据结构、数据操作、数据的完整性约束条件4返回返回15学校中有若干系,每个系有若干班级和教研室,每个教研室有若学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,每个班有若干学生,每个学生选修若干课程,每门课可由若干干教员,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。
请用学生选修。
请用E-R图画出此学校的概念模型。
图画出此学校的概念模型。
5返回返回16某工厂生产若干产品,每某工厂生产若干产品,每种产品由不同的零件组成,有的种产品由不同的零件组成,有的零件可用在不同的产品上。
这些零件可用在不同的产品上。
这些零件由不同的原材料制成,不同零件由不同的原材料制成,不同零件所用的材料可以相同。
这些零件所用的材料可以相同。
这些零件按所属的不同产品分别放在零件按所属的不同产品分别放在仓库中,原材料按照类别放在若仓库中,原材料按照类别放在若干仓库中。
请用干仓库中。
请用E-R图画出此工图画出此工厂产品,零件,材料,仓库的概厂产品,零件,材料,仓库的概念模型。
念模型。
17.某百货公司有若干个连锁商某百货公司有若干个连锁商店,每家商店经营若干商品,每店,每家商店经营若干商品,每家商店有若干职工,每个职工只家商店有若干职工,每个职工只能服务于一家商店。
试描述该百能服务于一家商店。
试描述该百货公司的货公司的E-R图。
图。
产品产品零件零件材料材料仓库仓库组成组成nnmm组成组成mmnn存放存放存放存放mmnnmmnn6返回返回第二章第二章关系数据库关系数据库2.解释概念解释概念关系(关系(Relation)笛卡尔积D1D2Dn的有限子集叫作在域D1,D2,Dn上的n元关系,简称关系。
通常表示为R(D1,D2,Dn)其中,R为关系名,n为关系的目或度。
关系模式(关系模式(RelationSchema)关系的描述称为关系模式。
它可以形式化地表示为R(U,D,DOM,F)其中,R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映象集合,F为属性间数据的依赖关系集合。
关系数据库关系数据库在一个给定的应用领域,所有实体和实体之间联系的集合构成一个关系数据库。
主键(主键(Primarykey)若关系有多个候选键,则选定其中一个为主键。
候选键(候选键(Candidatekey)若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选组。
外键(外键(ForeignKey)设F是关系R的一个或一组属性,但不是关系R的键。
如果F与关系S的主键相对应,则称F是R的外键,并称R为参照关系,S为被参照关系或目标关系。
主属性(主属性(Primaryattribute)候选键的诸属性称为主属性。
7返回返回3.关系的性质关系的性质v任意两个元组不能完全相同v关系中元组的次序是不重要的,次序可以任意交换v关系中属性的次序是不重要的,次序可以任意交换v同一列中的分量必须来自同一个域,是同一类型的数据v属性必须有不同的名称,不同的属性可以出自相同的域v每一分量必须取原子量6.关系数据语言的特点和分类关系数据语言的特点和分类v特点:
特点:
具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。
v分类分类:
关系代数语言、关系演算语言(元组关系演算语言、域关系演算语言)、具有关系代数和关系演算双重特点的语言,如SQL7.关系模型的完整性规则?
在参照完整性中,为什么外键属性的值关系模型的完整性规则?
在参照完整性中,为什么外键属性的值也可以为空也可以为空?
什么情况下才可以为空?
什么情况下才可以为空?
v实体完整性规则:
关系中的元组在主属性上不能有空值;v参照完整性规则:
外键得知不允许参照不存在的相应表的主键的值;8返回返回v用户定义的完整性规则:
用户根据具体应用的语义定义的完整性规则。
v当外键非本表的主键(属性)时可以取空值。
v实体完整性规则实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。
v参照完整性规则参照完整性规则若属性(或属性组)F是基本关系R的外键,它与基本关系S的主键相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主键值。
即属性F本身不是主属性,则可以取空值,否则不能取空值。
v当属性F的每个属性值为“不知道”或“不存在”的值时,即外键可以为空。
9返回返回第三章第三章关系数据库标准语言关系数据库标准语言SQL1.SQL具有哪些特点?
具有哪些特点?
v综合统一v高度非过程化v面向集合的操作方式v以同一种语法结构提供多种使用方式v语言简洁,易学易用3.建立建立chap2习题习题10的各表,包括主键和外键的各表,包括主键和外键CREATETABLES(snochar(6)primarykey,snamechar(20),statusint,citychar(20);CREATETABLEP(pnochar(6)primarykey,pnamechar(20),colorchar(10),weightrealreal数值型数据);10返回返回CREATETABLEJ(jnochar(6)primarykey,jnamechar(40),citychar(20);CREATETABLESPJ(snochar(6)foreignkeyreferencesS(sno),/*sno为外键,参照S表中的sno*/pnochar(6)foreignkeyreferencesP(pno),/*pno为外键,参照P表中的pno*/jnochar(6)foreignkeyreferencesJ(jno),/*jno为外键,参照J表中的jno*/qtyint,primarykey(sno,pno,jno);4.在第在第3题所建的表中完成下列操作题所建的表中完成下列操作
(1)求供应工程J1零件的供应商号码SNO:
selectsnofromSPJwherejno=J1;
(2)求供应工程J1零件P1的供应商号码SNO:
selectsnofromSPJwherejno=J1andpno=P1;11返回返回(3)求供应工程J1零件为红色的供应商号码SNO:
selectsnofromSPJwherejno=J1andpnoin(selectpnofromPwherecolor=红);或或:
selectsnofromSPJ,PwhereSPJ.pno=P.pnoandSPJ.jno=J1andP.color=红;(4)求没有使用天津供应商生产的红色零件的工程号JNO:
(此解使用不相关子查询方法)selectjnofromJwherejnonotin(selectjnofromSPJ,S,PwhereSPJ.sno=S.snoandSPJ.pno=P.pnoandcity=天津andcolor=红);12返回返回(5)求至少使用了供应商S1所供应的全部零件的工程号JNO:
将查询分为两步A、查询S1供应商供应的零件号SELECTDISTPNOFROMSPJWHERESNO=S1结果是(P1,P2)B、查询哪一个工程既使用P1零件又使用P2零件。
SELECTJNOFROMSPJWHEREPNO=P1ANDJNOIN(SELECTJNOFROMSPJWHEREPNO=P2)5.建立建立market库中的库中的3个表个表CREATETABLEcustomers(customeridchar(6)primarykey,cnamechar(20),citychar(10);CREATETABLEgoods(goodidchar(6)primarykey,gnamechar(20),pricereal,providerchar(20),stocksint,statusint);13返回返回CREATETABLEorders(orderidchar(6)primarykey,goodidchar(6)foreignkeyreferencesgoods(goodid),customeridchar(6)foreignkeyreferencescustomers(customerid),quantityint,ordersumreal,datedatetime);6.针对针对market数据库完成下列操作数据库完成下列操作
(1)查找所有上海客户的信息Select*fromcustomerswherecity=shanghai;
(2)查找所有商品的名称、库存量、价格及折价25%后的价格,并使用别名discount标识折扣价。
结果按价格由低到高排序Selectgname,stocks,price,price*0.75Discountfromgoodsorderbyprice;14返回返回(3)查找商品名中包含computer的商品编号、名称及价格Selectgoodid,gname,pricefromgoodswheregnamelike%computer%;(4)查找库存量大于100小于500的商品名称、库存量和单价Selectstocks,gname,pricefromgoodswherestocksbetween100and500;(5)查找2007.7.1