首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
设有某商业单位需要建立商务数据库用以处理销售记账,它记录的数据包括:顾客姓名,所在单位及电话号码;商品名称,型号,产地及单价;某顾客购买某商品的数量及日期。假定无同名顾客,无同型号商品,电话公用,顾客可在不同日期买同一商品。 将ER模型换成关系模型并规范
设有某商业单位需要建立商务数据库用以处理销售记账,它记录的数据包括:顾客姓名,所在单位及电话号码;商品名称,型号,产地及单价;某顾客购买某商品的数量及日期。假定无同名顾客,无同型号商品,电话公用,顾客可在不同日期买同一商品。 将ER模型换成关系模型并规范
admin
2018-10-09
35
问题
设有某商业单位需要建立商务数据库用以处理销售记账,它记录的数据包括:顾客姓名,所在单位及电话号码;商品名称,型号,产地及单价;某顾客购买某商品的数量及日期。假定无同名顾客,无同型号商品,电话公用,顾客可在不同日期买同一商品。
将ER模型换成关系模型并规范化到3NF。
选项
答案
将ER模型转换为关系模型,并规范到3NF: 顾客(姓名,单位,电话号码),主键:姓名 商品(型号,名称,单价,产地),主键:型号 购买(姓名,型号,数量,日期),主键:姓名+型号 因为转换过来的关系模式中,不存在属性依赖于其他非主属性,因此对转换的结果不需要优化。
解析
ER模型转换为关系模式的规则
①把ER模型中的每一个实体集转换为同名的关系,实体集的属性就是关系的属性,实体集的码就是关系的码。
②把ER模型中的每一个联系转换成一个关系,与该联系相连的各实体集的码以及联系的属性转换为关系的属性。关系的码根据下列情况确定:
若联系为1:1(一对一),则每个是实体集码均是该关系的候选码。
若联系为1:n(一对多),则关系的码为n端实体集的码。
若联系为m:n(多对多),则关系的码为各实体集码的组合。
③合并具有相同码的关系。
根据规则,把一个ER模型转换为关系模式,一般经历下面两个步骤:
1)标识ER模型中的联系。
2)依次转换与每个联系相关联的实体集及联系。
3)关系模式满足3NF,则必须满足关系模式中每隔一个非主属性既不部分依赖于码也不传递依赖于码,简而言之,第三范式就是属性不依赖于其他非主属性。
本题中从ER模型转换成关系模型,由两个实体和一个关系分别可以转换成三个关系模式。
转载请注明原文地址:https://kaotiyun.com/show/nWlZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
用于表达一个ODBC驱动程序和DBMS特殊连接的命名,被称为【】,它是数据库驱动程序与数据库系统连接的桥梁。
单个分区存储管理仅适用于【】和专用计算机系统。
在以下所列的条目中,哪些是数据库管理员的职责? Ⅰ.负责管理企业组织的数据库资源 Ⅱ.收集和确定有关用户的需求 Ⅲ.设计和实现数据库并按需要修改和转换数据 Ⅳ.为用户提供资料和培训方面的帮助
下面不正确的说法是
SPOOLing技术是为解决独占设备数量少、速度慢、不能满足众多进程的要求,而且在进程独占设备期间设备利用率又比较低的问题而提出的一种设备管理技术,它也是一种
Oracle系统不仅具有高性能的RDBMS,而且提供全过程的应用开发工具。如果要进行数据库建模,使用的是()。
在程序状态字PSW中设置了一位,用于控制用户程序不能执行特权指令,这一位是()。
隔离是操作系统安全保障的措施之一。下列哪一项不属于安全隔离措施?()
若“学生-选课-课程”数据库中的3个关系是:S(S#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)查找学生号为“200301188”学生的“数据库”课程的成绩,至少将使用关系()。
面向对象程序设计的基本思想是【】和可扩展性,可扩展性体现在继承性和行为扩展两个方面。
随机试题
下述不属于水溶性维生素的是
常用的平均数指标不包括
流行性感冒病毒的常见感染类型是乙型肝炎病毒常见的临床感染类型是
下列哪一行为应以妨害公务罪论处?()
( )属于要约邀请。
windows打开的多个窗口,既可以平铺,亦可以层叠。()
某企业有房屋、设备等固定资产1000万元,折旧率6%;银行长期贷款100万元,年利率5%;生产工人工资总额120万元;管理人员工资10万元;原料、材料、动力费用1.500万元。则其总固定成本为()万元。
甲、乙公司为同一集团下的两个子公司。甲公司2012年初取得乙公司10%的股权,划分为可供出售金融资产核算。同年5月份,又从母公司M公司手中取得乙公司45%的股权,对乙公司实现控制。第一次投资支付银行存款20万元,当日乙公司可辨认净资产公允价值为300万元,
有以下程序int a=2;int f(int *a){return (*a)++;}main( ){ int s=0; { int a=5; s+=f(&a); } s+=f(&a); printf(“%d\n”,
A、Thecareandproperselectionofdogsasfamilypets.B、Differentbreedsofdogs.C、Responsibilityforseeingthatdogsarepr
最新回复
(
0
)