免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2020年下半年 数据库系统工程师 下午试卷 案例
  第3题      
  知识点:   OOD   数据库

 
某订单管理系统的部分数据库关系模式如下:
客户:CUSTOMERS(Cno, Cname, Cage, Csex),各属性分别表示客户编号、客户姓名、 年龄和性别;
商品GOODS(Gno, Gname, Gprice, Gorigin),各属性分别表不商品编号、商品名称、 单价和产地;
订单:ORDERS(Ono. Cno, Gno, Oprice, Onumber),各属性分别表不订单编号、客户编号、商品编号、顾客购买商品的单价和数量。
有关关系模式的说明如下:
(1) 下画线标出的属性是表的主键。
(2)商品表中的Gprice是商品的当前价格,可能会发生变动;订单表中的Oprice是订单成交时的商品单价。
(3) 一个订单只包含一位顾客购买的一种商品;其商品数量至少1件,最多99件。
根据以上描述,回答下列问题,将SQL语句的空缺部分补充完整。
 
问题:3.1   (3分)
请将下面创建订单表的SQL语句补充完整,要求定义实体完整性约束、参照完整性约束,以及其他完整性约束。
CREATE TABLE ORDERS (
Ono CHAR(20) PRIMARY KEY,
Cno CHAR(10) (a),
Gno CHAR(15) (b),
Oprice NUMERIC(7,2),
Onumber SMALLINT (c));
 
问题:3.2   (5分)
查询所有订单的详细情况,要求输出订单号(Ono)、客户姓名(Cname)、商品名称 (Gname)、单价(Oprice)、数量(Onumber)和金额(Oamount),查询结果按照金额从大到小排列。此功能由下面的SQL语句实现,请补全。
SELECT Ono, Cname, Gname, Oprice, Onumber, (d) AS Oamount
FROM CUSTOMERS, ORDERS,
GOODS WHERE (e)
AND (f)
(q) BY (h);
 
问题:3.3   (5分)
创建已售商品信息视图,给出已售商品的编号(Gno)、名称(Gname)、订单个数(Onum)及平均每单的商品数量(GAnum)。此视图的创建语句如下,请补全。
CREATE (i) GOODS_SOLD AS
SELECT ORDERS.Gnc AS Gn〇, MIN(GOODS?Gname) AS Gname,
(j) AS Onum, (k)_ AS GAnum
FROM ORDERS, GOODS
WHERE ORDERS.Gno = GOODS.Gno
(1) BY (m);
 
问题:3.4   (2分)
查询未售出商品的编号和名称。此功能由下面的SQL语句实现,请补全。
SELECT Gno, Gname
      FROM (n)
(o)
SELECT Gno, Gname
      FROM GOODS_SOLD;
 
 
 

   知识点讲解    
   · OOD    · 数据库
 
       OOD
        OOA中的5个层次和5个活动继续贯穿在OOD过程中。OOD模型由4个部分和4个活动组成。
        4个活动是设计问题域部件、设计人机交互部件、设计任务管理部件、设计数据管理部件。
 
       数据库
        数据库(DataBase,DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
        系统使用的所有数据存储在一个或几个数据库中。
   题号导航      2020年下半年 数据库系统工程师 下午试卷 案例   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
 
第3题    在手机中做本题