题目详情

某健身俱乐部要开发一个信息管理系统,该信息系统的部分关系模式如下:员工(员工身份证号,姓名,工种,电话,住址)会员(会员手机号,姓名,折扣)项目(项目名称,项目经理,价格)预约单(会员手机号,预约日期,项目名称,使用时长)(外键:会员手机号)消费(流水号,会员手机号,项目名称,消费金额,消费日期)(外键:会员手机号,项目名称)有关关系模式的属性及相关说明如下:1)俱乐部有多种健身项目,不同的项目每小时的价格不同。俱乐部实行会员制,且需要电话或在线提前预约。2)每个项目都有一个项目经理,一个经理只能负责一个项目。3)俱乐部对会员进行积分,达到一定积分可以进行升级,不同的等级具有不同的折扣。

【问题1】请将下面创建消费关系的SQL语句的空缺部分补充完整,要求指定关系的主码、外码,以及消费金额大于零的约束。CREATE TABLE 消费(流水号 CHAR(12) (a) ,会员手机号CHAR(11),项目名称CHAR (8),消费金额NUMBER ( b ) ,消费日期DATE,( c ),( d ),);

【问题2】(1)手机号为18812345678的客户预约了2014年3月18日两个小时的羽毛球场地,消费流水号由系统自动生成。请将下面SQL语句的空缺部分补充完整。INSERT INTO消费(流水号,会员手机号,项目名称,消费金额,消费日期)SELECT '201403180001','18812345678','羽毛球', ( e ) ,'2014/3/18'FROM会员,项目,预约单WHERE 预约单.项目名称=项目.项目名称AND ( f )AND 项目.项目名称='羽毛球'AND 会员.会员手机号='18812345678';

(2)需要用触发器来实现会员等级折扣的自动维护,函数float vip_value(char(11) 会员手机号)依据输入的手机号计算会员的折扣。请将下面SQL语句的空缺部分补充完整。CREATETRIGGERVIP_TRG AFTER ( g ) 0N ( h )REFERENCINGnew row AS nrowFOR EACH ROWBEGINUPDATE 会员SET ( I )WHERE ( j ) ;END

【问题3】请将下面SQL语句的空缺部分补充完整。(1)俱乐部年底对各种项目进行绩效考核,需要统计出所负责项目的消费总金额大于等于十万元的项目和项目经理,并按消费金额总和降序输出。SELECT 项目.项目名称,项目经理,SUM(消费金额)FROM 项目,消费WHERE ( k )GROUP BY ( l )ORDER BY ( m ) ;(2)查询所有手机号码以"888"结尾,姓"王"的员工姓名和电话。SELECT 姓名,电话FROM员工WHERE姓名 ( n ) AND 电话 ( o )

正确答案及解析

正确答案
解析

【问题1】(a)PRIMARY KEY (或NOT NULL UNIQUE)(b)CHECK(消费金额>0)(c)FOREIGN KEY(会员手机号)REFERENCES 会员(会员手机号)(d)FOREIGN KEY(项目名称)REFERENCES 项目(项目名称)

【分析】本题考査SQL的应用,属于比较传统的题目,考查点也与往年类似。本问题考查数据定义语言DDL和完整性约束。根据题意,需要对"消费"表的"流水号"加主键(或非空)约束,考查实体完整性约束,对应的语法为:PRIMARY KEY (或 NOT NULL UNIQUE )"消费金额"需要大于0,所以需要加Check约束,对应的语法为:CHECK (消费金额>0)"会员手机号"是"会员"关系的主键,是"消费"关系的外键,考查参照完整性约束,需要增加外键约束,对应的语法为:FOREIGN KEY (会员手机号)REFERENCES 会员(会员手机号)"项目名称"是"项目"关系的主键,是"消费"关系的外键,考查参照完整性约束,需要增加外键约束,对应的语法为:FOREIGN KEY (项目名称)REFERENCES 项目(项目名称)

【问题2】(1)(e) 价格*使用时长*折扣 (f) 预约单.会员手机号=会员.会员手机号(2)(g) INSERT (h)消费(i)折扣=vip_value(nrow.会员手机号) (j)会员.会员手机号=nrow.会员手机号

【分析】本问题考查数据操纵语言DML。(1)本题考查一个较完整的查询语句,需要向"消费"关系插入新元组。SELECT子句缺少"消费金额"。消费金额=价格*使用时长*折扣。WHERE子句缺少"预约单"关系和"会员"关系按照"会员手机号"的连接,因此应该增加"预约单.会员手机号=会员.会员手机号"。(2)本题考查触发器,触发器是一个能由系统自动执行对数据库修改的语句。一个触发器由事件、条件和动态三部分组成:事件是指触发器将测试条件是否成立,若成立 就执行相应的动作,否则就什么也不做;动态是指若触发器测试满足预定的条件,那么就由数据库管理系统执行这些动作。本题首先定义触发器的事件,用触发器来实现会员等级折扣的自动维护。(g)和(h)缺少向"消费"关系插入的语句,因此应该分别补充"NSERT"和 "消费"。(i)语句调用vip_value函数实现会员折扣的更新,函数参数为会员手机号,因此应该补充"折扣=vip_value(nrow.会员手机号)"。(j)语句实现"会员"关系和"nrow"关系按照"会员手机号"的连接,因此应该补充"会员.会员手机号=nr0w.会员手机号"。

【问题3】(1)(k)项目.项目名称=消费.项目名称 (i)项目.项目名称,项目经理 HAVING SUM(消费金额)>= 100000 (m) SUM(消费金额)DESC(2)(n) LIKE"王%' (o) LIKE "%888"

【分析】本问题考査数据操纵语言DML。(1)本题考查一个较完整的查询语句,知识点包括夺标查询、集函数、查询分组、分组条件和排序查询结果。査询涉及"项目"和"消费"关系模式。用集函数SUM(消 费金额)求消费总金额,若有GROUP BY子句,则集函数作用在每个分组上,且GROUP BY之后应包含除了集函数之外的所有结果列。若GROUP BY之后跟有HAVING子句,则只有满足条件的分组才会输出。"RDER BY"列名[ASC|DESC]"对输出结果进行升序或降序的排列,若不明确制定法升序或降序,则默认升序排列。(2)本题考查用关键字LIKE进行字符匹配。LIKE的语法为:[NOT] LIKE '<匹配串>'其中,匹配串可以是一个完整的字符串,也可以含有通配符%和_,其中%代表任意长度(包括0长度)的字符串,_代表单个字符。手机号码以"888"结尾,姓"王"的 员工对用的表示为:姓名LIKE'王%"AND电话LIKE"%888'。

你可能感兴趣的试题

单选题

一台主机的IP地址为202.123.25.36,掩码为255.255.254.0。如果该主机需要在该网络进行直接广播,那么它应该使用的目的地址为( )

  • A.202.123.25.0
  • B.202.123.25.255
  • C.202.123.24.0
  • D.202.123.24.255
查看答案
单选题

在计算机系统的日常维护工作中,应当注意硬盘工作时不能__(2)__。另外,需要防范病毒,而__(3)__是不会被病毒感觉的。

  • A.电子邮件
  • B.硬盘
  • C.U盘
  • D.ROM
查看答案
单选题

有 4 个 IP 地址:201.117.15.254、201.117.17.01、201.117.24.5 和 201.117.29.3,如果子网掩码为 255.255.248.0,则这 4 个地址分别属于3个子网;其中属于同一个子网的是()

  • A.201.117.15.254 和 201.117.17.01
  • B.201.117.17.01 和 201.117.24.5
  • C.201.117.15.254 和 201.117.29.3
  • D.201.117.24.5 和 201.117.29.3
查看答案
单选题

在异步通信中,每个字符包含1位起始位、7位数据位、1位奇偶位和1位终止位,每秒钟传送200个字符,采用4相位调制,则码元速率为()。

  • A.50波特
  • B.500波特
  • C.550波特
  • D.1000波特
查看答案
单选题

在 Windows 中,运行( )命令得到下图所示结果。以下关于该结果的叙述中,错误的是( )。

Pinging 59.74.111.8 with 32 bytes of data:

Reply from 59.74.111.8: bytes=32 time=3ms TTL=60

Reply from 59.74.111.8: bytes=32 time=5ms TTL=60

Reply from 59.74.111.8: bytes=32 time=3ms TTL=60

Reply from 59.74.111.8: bytes=32 time=5ms TTL=60

Ping statistics for 59.74.111.8:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

Minimum = 3ms, Maximum = 5ms, Average = 4ms

  • A.该命令使得本地主机向目标主机发送了 4 个数据包
  • B.本地主机成功收到了目标主机返回的 4 个数据包
  • C.本地主机与目标主机连接正常
  • D.该命令用于查看目标主机的 IP 地址
查看答案

相关题库更多 +