数据库课后答案.docx

上传人:b****5 文档编号:2891203 上传时间:2022-11-16 格式:DOCX 页数:16 大小:22.79KB
下载 相关 举报
数据库课后答案.docx_第1页
第1页 / 共16页
数据库课后答案.docx_第2页
第2页 / 共16页
数据库课后答案.docx_第3页
第3页 / 共16页
数据库课后答案.docx_第4页
第4页 / 共16页
数据库课后答案.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数据库课后答案.docx

《数据库课后答案.docx》由会员分享,可在线阅读,更多相关《数据库课后答案.docx(16页珍藏版)》请在冰豆网上搜索。

数据库课后答案.docx

数据库课后答案

第一章数据库系统概述

基本概念:

1.数据模型:

数据结构、数据操作、完整性约束

2.完整性约束:

实体、参照、用户定义

3.实体、属性、码

4.三级模式结构:

外模式、模式、内模式

第一章数据库系统概述

4使用数据库系统有什么有点?

P4

数据结构化

数据的共享性高、冗余度低、易扩充

数据独立性高

DBMS对数据进行统一的管理和控制

6数据库管理系统的主要功能有哪些?

P6

数据定义功能

数据操纵功能

数据库的事务管理和运行管理

数据库的建立和维护功能

其他功能

9简述数据库系统的三级模式结构,这种结构的优点是什么?

P7-9

–模式(逻辑模式):

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

–外模式(用户模式):

是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

–内模式(存储模式):

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

–优点:

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

第一章数据库系统概述

10什么是数据库的逻辑独立性、物理独立性?

为什么数据库系统具有数据与程序的独立性?

P9

逻辑独立性:

当模式改变时,由DBA对各个外模式/模式作相应改变,从而保持外模式不变。

因此依据外模式所编写的应用程序也可以不必改变。

物理独立性:

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

数据库之所以能够具有数据与程序的独立性,是由两级映射所提供的逻辑独立性和物理独立性所保证的。

11什么是数据模型?

其作用和三要素是什么?

P11-12

数据模型是对现实世界数据特征的抽象。

用来描述数据、组织数据和对数据进行操作的。

三要素:

数据结构、数据操作、数据的完整性约束条件

15

16

17

第二章 关系数据库

2 解释概念

关系:

P25定义2.2

关系模式:

P27

关系数据库:

P27

主键:

候选键:

外键:

      P25

主属性:

3关系的性质P26

任意两个元组不能完全相同

关系中元组的次序是不重要的,次序可以任意交换

关系种属性的次序是不重要的,次序可以任意交换

同一列中的分量必须来自同一个域,是同一类型的数据

属性必须有不同的名称,不同的属性可以出自相同的域

每一分量必须取原子量

6关系数据语言的特点和分类 P28

特点:

具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。

分类:

关系代数语言、关系演算语言(元组关系演算语言、域关系演算语言)、具有关系代数和关系演算双重特点的语言

7关系模型的完整性规则?

在参照完整性中,为什么外键属性的值也可以为空,什么情况下才可以为空?

P29

实体完整性规则:

关系中的元组在主属性上不能有空值;

参照完整性规则:

外键得知不允许参照不存在的相应表的主键的值;

用户定义的完整性规则:

用户根据具体应用的语义定义的完整性规则。

当外键非本表的主属性时可以取空值。

11在下列表中完成相应的操作

 S(s#,sname,sex,age)

 C(c#,cname,teacher)

 SC(s#,c#,grade)

(1)检索LIU老师所授课程的课程号和课程名:

          ∏c#,cname(δteacher=‘LIU‘(C))

(2)检索年龄大于22岁的男同学的学号和姓名:

         ∏s#,sname(δsex=‘男'∧age>22(S))

 (3)检索学号为S3的学生所学课程的课程号与任课老师姓名:

            ∏c#,teacher(δs#=‘S3'(SC)∞C)

(4)检索WANG同学不学的课程的课程号:

       ∏c#(C)-∏c#(δsname=‘WANG'(SC∞S))

(5)检索至少选修LIU老师所授课程中一门课程的女学生的姓名:

∏sname(δteacher=‘LIU’(C)∞SC∞∏s#,sname(δsex=‘女’(S)))

(6)检索全部学生都选修的课程的课程号与课程名:

     ∏c#,cname,s#(SC∞C) ÷∏s#(S)

(7)检索选修课程包含LIU老师所授全部课程的学生的学号:

          ∏s#,c#(SC)÷∏c#(δteacher=‘LIU’(C))

第三章 关系数据库标准语言SQL

1SQL具有哪些特点?

P50

综合统一高度非过程化面向集合的操作方式以同一种语法结构提供多种使用方式语言简洁,易学易用

8什么是基本表、视图,两者有什么区别?

基本表:

本身独立存在的表,一个关系对应一个基本表;

视图:

从一个或多个基本表或视图导出的表,是关系数据库系统为用户提供从不同角度观察和使用数据库中数据的一种机制。

–视图是虚表,在数据库中只存放视图的定义,而不存放视图所对应的数据,这些数据仍存放在原来的基本表中。

10是否所有视图都可以更新?

为什么?

并不是所有视图都可以更新,因为有些视图的更新操作不能唯一地、有意义地转换为对相应基本表的更新。

第三章 关系数据库标准语言SQL

3建立chap2习题10的各表,包括主键和外键

CREATETABLES

 sno       char(6) primarykey,

 sname  char(20),

 status    int,

 city        char(20)

);

CREATETABLEP

 pno       char(6) primarykey,

 pname  char(20),

 color     char(10),

 weight   real

);

 

CREATETABLEJ

 jno       char(6) primarykey,

 jname  char(40),

 city        char(20)

);

CREATETABLESPJ

 sno char(6)  foreignkeyreferences S(sno),

 pno char(6)  foreignkeyreferences P(pno),

 jno  char(6)  foreignkeyreferences J(jno),

 qty   int,

 primarykey(sno,pno,jno)

);

4在第3题所建的表中完成下列操作

(1)求供应工程J1零件的供应商号码SNO:

   selectdistinctsno

   fromSPJwherejno='J1';

 

(2)求供应工程J1零件P1的供应商号码SNO:

   selectsnofromSPJ

   wherejno='J1'andpno='P1';

(3)求供应工程J1零件为红色的供应商号码SNO:

   selectsnofromSPJ

   wherejno='J1' 

       andpnoin

   (selectpnofromPwherecolor='红');

 或:

  

   selectsnofromSPJ,P

   whereSPJ.pno=P.pno

       andSPJ.jno='J1'andP.color='红';

(4)求没有使用天津供应商生产的红色零件的工程号JNO:

 方法一(不相关子查询):

   selectjnofromJwherejnonotin

       (selectjnofromSPJ,S,P

               whereSPJ.sno=S.sno

                   andSPJ.pno=P.pno

                   andcity='天津'

                   andcolor='红');

(5)求至少使用了供应商S1所供应的全部零件的工程号JNO:

P67例3.46

 selectdistinctjnofromSPJA where

 notexists

      (select*fromSPJBwheresno='S1'and

       notexists

             (select*fromSPJCwhere

              C.pno=B.pno and C.jno=A.jno));

5建立market库中的3个表

CREATETABLEcustomers

 customerid  char(6)  primarykey,

 cname         char(20),

 city              char(10)

);

CREATETABLEgoods

 goodid  char(6)  primarykey,

 gname  char(20),

 price     real,

 providerchar(20),

 stocks   int,

 status    int

);

CREATETABLEorders

 orderid      char(6)  primarykey,

 goodid       char(6) foreignkeyreferencesgoods(goodid),

 customerid char(6)foreignkeyreferencescustomers(customerid),

 quantity       int,

 ordersum    real,

 date            datetime);

6针对market数据库完成下列操作

(1)查找所有上海客户的信息

      Select *

      from customers

      wherecity=‘上海’;

(2) 查找所有商品的名称、库存量、价格及折价25%后的价格,并使用别名discount标识折扣价。

结果按价格由低到高排序

      Selectgname,stocks,price,price*0.75Discount

      from goods

      orderbyprice

 (3)查找商品名中包含computer的商品编号、名称及价格

     Selectgoodid,gname,price

      from goods

      wheregnamelike‘%computer%’

(4)查找库存量大于100小于500的商品名称、库存量和单价

     Selectstocks,gname,price

      from goods

      where stocksbetween100and500

 (5) 查找2007.7.1至2007.12.31期间,订货金额大

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1