某医院为了更好的为患者服务、提高医院管理水平,拟开发满足自身特点的信息系统。其部分需求及设计如下:
【需求描述】
(1)患者到医院就诊,需提供本人医保卡或身份证,系统根据医保卡或身份证从外部医保信息库获取患者的其他详细信息,包括医保卡号、身份证号、姓名、性别、民族、出生日期等信息。
(2)医生信息包括医生编号、姓名、性别、出生日期、职称等信息。
(3)通过患者自述、化验结果分析等信息,医生对患者的病情进行诊断,开具处方,并填写病例。病例同时包含诊断和处方信息,包括编号、患者姓名、病情描述、诊断结论、主治医生、药品名称、药品数量、服用剂量等,处方中一般会有多种药品。
(4)病人凭医生开具的处方可在医院购买药品。医院记录药品的条码、名称、价格、生产厂商等信息。
【逻辑结构设计】
根据上述需求,设计出如下关系模式
医生(编号,姓名,性别,出生日期,职称)
患者(身份证号,医保卡号,姓名,性别,民族,出生日期)
药品(条码,名称,价格,生产厂商)
病例(编号,药品条码,患者身份证号,主治医生编号,病情描述,诊断结论,诊断日期,服用剂量,药品数量,购买日期)。补充说明:患者身份证号,主治医生编号 是外键
【问题1】(5分)
对关系“患者”,请回答以下问题:
(1)给出函数依赖集。
(2)给出所有候选码。
(3)判定属于第几范式,并说明理由。
【问题2】(7分)
对关系“病例”,存在如下的数据依赖:
DD={编号→(患者身份证号,主治医生编号,病情描述,诊断结论,诊断日期),(编号,药品条码)→→(服用剂量,药品数量,购买日期)}
请回答以下问题
(1)该关系模式存在哪些问题?
(2)该关系模式是否属于4NF?请给出理由。
(3)如果“病例”不是4NF,请分解,并指出分解后的关系模式所属范式。分解后的关系名依次为:病例1,病例2,...。
【问题3】(3分)
针对【问题2】的规范化要求,如果设计者分解出的多个关系模式其中之一如下:
购药(病例编号,药品条码,服用剂量,药品数量,购买日期)
如果医院要求统计每名医生(编号和姓名)每天接诊的患者所购买的各个药品的条码和数量。基于上述设计,实现该统计共需哪几个关系?为提高该统计效率,允许对范式条件放宽要求,请修改“购药”关系模式以优化该统计。
正确答案及解析
正确答案
解析
【问题1】
(1)身份证号→(姓名,性别,民族,出生日期,医保卡号), 医保卡号和身份证号相互依赖。或者医保卡号→(身份证号,姓名,性别,民族,出生日期), 医保卡号和身份证号相互依赖 。
(2)身份证号或医保卡号
(3)属于BCNF,不存在非主属性/主属性对码的部分函数依赖和传递函数依赖。
【问题2】
(1)由于一个处方中会有多种药品,存在有数据冗余,会造成数据的插入、更新、删除等异常。
(2)不是4NF,存在非主属性对码的部分函数依赖,不是2NF,且存在非平凡函数的多值依赖。
(3)病例1( 编号 ,患者身份证号,主治医生编号,病情描述,诊断结论,诊断日期)。属于BCNF
(4)病例2( 编号,药品条码,服用剂量,药品数量,购买日期) 。 属于4NF
【问题3】
实现该统计共需关系有:医生关系模式
购药(病例编号,药品条码,服用剂量,药品数量,购买日期,医生编号、医生姓名)
包含此试题的试卷
你可能感兴趣的试题
一台主机的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 地址
- 查看答案