试题详情
简答题 设有关系模式R(职工号,职工名,项目号,项目名,工资),假设一个职工可参加多个项目,在每个项目中各领一份工资。那么请回答以下问题: (1)请写出这个关系模式的函数依赖和主关键字; (2)这个关系符合第几范式,为什么?  (3)请举例说明,这个关系存在哪些问题; (4)请把这个关系模式分解成3NF,并说明理由。
  • (1)函数依赖包括:职工号→职工名,项目号→项目名,(职工号,项目号)→工资
    主键为(职工号,项目号)
    (2)这个关系符合第一范式,因为它的每个属性都不可再分。
    (3)这个关系没有达到第二范式,可能出现数据冗余和操作异常。
    例如,某个职工参与了多个项目的工作,他的职工号、职工名会重复多次存储。同样,如果一个项目有多名职工参加,项目号和项目名也会重复我次存储。另外,如果现在增加了一个新的项目,但暂时还没有安排职工参加,那么由于主键是(职工号,项目号),这个项目的信息可能无法插入。
    (4)修改后的各个关系如下:
    职工关系=(职工号,职工名)
    项目关系=(项目号,项目名)
    职工选择项目关系=(职工号,项目号,工资)
    (注:此处的工资是指职工参加某个项目得到的劳动报酬)
  • 关注下方微信公众号,在线模考后查看

热门试题