数据库练习三答案

来源:互联网 发布:手机即时聊天软件 编辑:程序博客网 时间:2024/05/01 20:16

一选择
1 C  2 A  3 A 4  B  5 C  6 A  7 A
8 C  9 C  10  D  11 B   12 B   13 D
二、填空
1、数据库管理系统  2 、文件系统、数据库管理系统
3、主键  外键
4、一对多,多对多
5、对该列求平均
6、ALTER,DROP
三、简答题
1 简述关系数据模型的三类完整性规则。

参见课本P18

2、什么是数据库系统?

参见课本P8


3、简述使用DBMS管理数据的优点

参见课本P6

3、SQL语言具有什么功能??

参见课本P27


4.假设一个数据库中有关系:

订单关系  R(R#,C#,P#,RD,QTY)其属性的含义依次为订单号、客户号、产品号、日期和数量。规定一张订单只能订购一种产品。
用SQL语句写出下列查询:
检索每种产品的订单个数和订购产品的总量。
  
   select p#,count(*),sum(QTY)
   from r
   group by p#

5.假设一个数据库中有3个关系:
客户关系  C(C#,CN,CA),属性的含义依次为客户号、客户名称和地址;
产品关系  P(P#,PN,PR,PS),属性的含义依次为产品号、品名、单价和供应商;
订单关系  R(R#,C#,P#,RD,QTY),属性的含义依次为订单号、客户号、产品号、日期和数量。规定一张订单只能订购一种产品。
用SQL语句写出下列查询:
列出客户订购产品信息,包括日期、客户号、客户名称、品名和数量。
  SELECT RD,C.C#,CN,PN,QTY
  FROM C JION R ON C.C#=R.C# JOIN P
  ON R.P#=P.P#
 或
   SELECT RD,C.C#,CN,PN,QTY
  FROM C ,R,P
  WHERE  C.C#=R.C# AND R.P#=P.P#


6.根据5题给出的3个关系,用SQL语句创建一个客户付款视图VA,VA的属性有日期、客户名称和金额(金额=单价*数量)。
CREATE VIEW VA(日期,客户名称,金额)
AS
SELECT RD,CN,QTY*PR
  FROM C JION R ON C.C#=R.C# JOIN P
  ON R.P#=P.P#

7.某公司的业务规则如下:
(1)每位职工可以参加几个不同的工程,且每个工程有多名职工参与;
(2)每位职工有一个职位,且多名职工可能有相同的职位;
(3)职位决定小时工资率,公司按职工在每一个工程中完成的工时,计算酬金;
(4)职工的属性有职工号、姓名、职位名和小时工资率;
 (5) 职位的属性有职位号,职位名 小时工资率
(5)工程的属性有工程号和工程名称。

试根据上述业务规则:①设计ER模型;

②将ER模型转换成关系模式集,并规范化为3NF。
职工(职工号、姓名、职位号,职位名,小时工资率)
职位(职位号,职位名 ,小时工资率)
工程(职工号,工程名称)
参与(职工号,工程号,工时)

规范化为3NF,其结果为
职工(职工号、姓名、职位号)
职位(职位号,职位名 ,小时工资率)
工程(职工号,工程名称)
参与(职工号,工程号,工时)