测试4-数据库设计

文章讨论了数据库设计中的关键概念,包括如何将E-R图转换为关系模型,涉及实体、联系、主码和外键的使用。它解释了E-R图中不同形状的含义,如实体、联系和属性,并阐述了1:1、1:m和m:n关系的实现方法。此外,文章还提供了两个具体例子,展示了如何将部门、员工、实习生和项目的E-R图以及科室、医生和病人的E-R图转化为关系模型,并指出了每个关系的主码和外码。
摘要由CSDN通过智能技术生成

测试4-数据库设计

在这里插入图片描述

选择题

  1. 下列关于数据库运行和维护的叙述中,正确的是D。

    A .只要数据库正式投入运行,就标志着数据库设计工作的结束

    B .数据库的维护工作就是维持数据库系统的正常运行

    C .数据库的维护工作就是发现错误,修改错误

    D .数据库正式投入运行标志着数据库运行和维护工作的开始

  2. E-R 图是表示概念模型的有效工具之一, E - R 图中的”菱形框”表示的是A

    A .联系

    B . 实体

    C .实体的属性

    D .联系的属性

  3. 要将m:n的两个实体的E-R 图转换成关系模式,可以转换为C关系模式.

    A . 1 个

    B . 2 个

    C . 3 个

    D . 4 个

  4. 数据库设计中, B不参加需求分析工作。

    A.系统分析员

    B.程序员

    C.数据库设计人员

    D.用户

  5. 在数据库设计过程中, D工作离不开用户的参与。

    A.设计数据库模式

    B.设计数据库外模式

    C.设计数据库内模式

    D.进行需求分析

  6. 从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是C 。

    A. M端实体的关键字

    B. N端实体的关键字

    C. M端实体关键字与N端实体关键字组合

    D. 重新选取其他属性

  7. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是 D。

    A.多对多

    B.一对一

    C.多对一

    D.一对多

  8. 若两个实体之间的联系是1 : m ,则实现1 : m 联系的方法是A

    A .在“m ”端实体转换的关系中加入“l ”端实体转换关系的码

    B .将“m ”端实体转换关系的码加入到“1”端的关系中

    C .在两个实体转换的关系中,分别加入另一个关系的码

    D .将两个实体转换成一个关系

    1:m关系表示,1个实体对应多个实体。

    要实现1:m关系,可以在m端实体转换成的关系模式表中,增加l端实体的主键作为外键。

    这样在m端实体表的每条记录就可以通过外键,引用l端实体的对应记录。实现1:m映射。

  9. 从E-R 图导出关系模式时,如果两实体间的联系是m : n ,下列说法中正确的是D。

    A .将m 方码和联系的属性纳入n 方的属性中

    B .将n 方码和联系的属性纳入m 方的属性中

    C .在m 方属性和n 方的属性中均增加一个表示级别的属性

    D .增加一个关系表示联系,其中纳入m 方和n 方的码

    m:n关系表示两实体之间是多对多的关系。

    将m:n关系转换为关系模式时,需要增加一个关系(表)作为中间表:

    • 包含m方实体主键作为外键
    • 包含n方实体主键作为外键
    • 包含表示两者关系的属性
      通过这样一个中间关系表,来实现m方和n方在多对多关系中的映射。
  10. E-R 图中的联系可以与 实体有关.

    A . 0 个

    B . 1 个

    C . l 个或多个

    D .多个

  11. 当局部E-R 图合并成全局E-R 图时可能出现冲突,B不属于合并冲突的是.

    A .属性冲突

    B .语法冲突

    C .结构冲突

    D .命名冲突

    E-R图合并时可能出现的冲突主要包括这三种:属性冲突、结构冲突和命名冲突。

  12. 数据库概念设计的E-R 图中,用属性描述实体的特征,属性在E-R 图中用D 表示。

    A .矩形

    B .四边形

    C .菱形

    D .椭圆形

  13. 在数据库的概念设计中, 最常用的数据模型是D .

    A.形象模型

    B .物理模型

    C. 逻辑模型

    D .实体联系模型

    在数据库的概念设计阶段,最常用的数据模型是实体联系模型。

    实体联系模型用于描述数据库概念模型,指定数据库中的主要数据元素(实体集)和它们之间的联系(关系集)。

    实体联系模型步骤:

    1. 确定数据库涉及到的主要实体类型
    2. 确定实体之间的关系
    3. 衍生属性,确定每种类型的属性
    4. 指定实体和关系集之间的限制
    5. 规范化实体联系模型
  14. E-R 图是数据库设计的工具之一,它适用于建立数据库的 A

    A .概念模型

    B . 逻辑模型

    C .结构模型

    D .物理模型

    E-R图(Entity-Relationship model)是数据库设计的重要工具之一,用于建立数据库概念模型。

  15. 数据库需求分析时,数据字典的含义是 D

    A .数据库中所涉及的属性和文件的名称集合

    B .数据库中所涉及到字母、字符及汉字的集合

    C .数据库中所有数据的集合

    D .数据库中所涉及的数据流、数据项和文件等描述的集合

简答题

1. 画E-R图并将其转换为适当的关系模型

题目

某IT公司的数据库信息:

①部门具有部门编号、部门名称、办公地点;

②部门员工具有员工编号、姓名、级别,员工只在一个部门工作;

③每个部门有唯一一个部门员工作为部门经理;

④实习生具有实习编号、姓名、年龄,只在一个部门实习;

⑤项目具有项目编号、项目名称、开始日期、结束日期;

⑥每个项目由一名员工负责,由多名员工、实习生参与;

⑦一名员工只负责一个项目,可以参与多个项目,在每个项目具有工作时间;

⑧每个实习生只参与一个项目。

(1)试画出这个数据库的E-R图。

(2)转化为适当的关系模型,并给出关系的主码和外码。

E-R图

在这里插入图片描述

关系模型

部门(部门编号,部门名称,办公地点,部门经理)

主码:部门编号

外码:部门经理 -> 员工(员工编号)

员工(员工编号,姓名,级别,部门编号)

主码:员工编号

外码:部门编号 -> 部门(部门编号)

实习生(实习编号,姓名,年龄,部门编号)

主码:实习编号

外码:部门编号 -> 部门(部门编号)

项目(项目编号,项目名称,开始日期,结束日期,员工编号)

主码:项目编号

外码:员工编号 -> 员工(员工编号)

员工项目参与关系(员工编号,项目编号,工作时间)

主码:(员工编号,项目编号)

外码:员工编号 -> 员工(员工编号)

外码:项目编号 -> 项目(项目编号)

📌注意:部门经理是员工表中的一种角色,因此不需要单独创建一张关系表来存储部门经理与部门之间的关系。部门经理在员工表中通过外键指向员工表自身的主键实现。

2. 画E-R图并将其转换为关系模型

题目

设有一局部应用,包括 3 个实体“科室”,“医生”,“病人”,且有以下事实:每位医生属于且仅属于一个科室;每个科室可以聘用若干医生,对每个医生聘用时存有聘用期限和聘用日期;一个病人可以由不同的医生为其诊断,每个医生可以为若干病人诊治,每次诊断存有就诊日期。设科室的属性包括科室代码,科室名称;医生的属性包括工号,姓名和职称;病人的属性包括病历号、姓名、年龄。

(1)试画出这个数据库的E-R图。

(2)转化为适当的关系模型,并给出关系的主码和外码。

E-R图

在这里插入图片描述

关系模型

科室(科室代码,科室名称)

主码:科室代码

医生(工号,姓名,职称,科室代码,聘用日期,聘用期限)

主码:工号

外码:科室代码 -> 科室(科室代码)

病人(病历号,姓名,年龄)

主码:病历号

诊断(病历号,工号,就诊日期)

主码:(病历号,工号)

外码:病历号 -> 病人(病历号)

外码:工号 -> 医生(工号)

聘用(工号,科室代码,聘用日期,聘用期限)

主码:(工号,科室代码)

外码:工号 -> 医生(工号)

外码:科室代码 -> 科室(科室代码)

注意:一个医生可以为若干病人诊断,一个病人可以由不同的医生为其诊断。诊断关系表中存储了每次诊断的信息,包括病历号、医生工号和就诊日期。一个医生可以为多个病人诊断,一个病人也可以由多个医生诊断,因此诊断关系表的主键是(病历号,工号)组合。另外,每个科室可以聘用多个医生,每个医生也可以在多个科室工作,所以聘用关系表的主键是(工号,科室代码)组合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会喷火的小火龙

你的鼓励是我最大的创作动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值