数据库上机实验7 数据库设计

简介: 数据库上机实验7 数据库设计

一、实验目的

1、了解用户需求的整理和分析。

2、掌握概念结构设计方法和步骤。

3、掌握逻辑结构设计的方法和步骤。

4、掌握索引的选择和设计方法。

二、实验内容

(1)某工厂的物资管理系统涉及的实体有:

仓库:属性有仓库号、面积、电话号码

零件:属性有零件号、名称、单价

供应商:属性有供应商号、姓名、地址、电话

项目:属性有项目号、预算、开工日期

职工:属性有职工号、姓名、年龄

其中,一个仓库可以存放多种零件,一种零件可以存放在多个仓库中,用库存量来表示某种零件在某个仓库中的数量。一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作。 供应商、项目和零件三者之间具有多对多的联系。即一个供应商可以供给若干项目多种零件,每个项目可以使用不同供应商供应的零件,每种零件可由不同供应商供给,用供应量来表示供应数量。

根据以上需求分析的情况,完成以下有关的设计。

1、画出该物资管理系统的E-R图。

2、将该E-R图转换为对应的关系模式,并用下划线标示出各关系模式的主码。

     仓库(仓库号、面积、电话号码)

     零件(零件号、名称、单价)

     供应商(供应商号、姓名、地址、电话)

     项目(项目号、预算、开工日期)

     职工(职工号、姓名、年龄、仓库保管员)

     存放(仓库号零件号、库存量)

     供应(零件号供应商号项目号、供应量)

3、指出转换以后的各关系模式的最高范式等级。

     仓库     最高范式等级为BCNF

     零件     最高范式等级为BCNF

     供应商   最高范式等级为BCNF

     项目     最高范式等级为BCNF

     职工     最高范式等级为BCNF

     存放     最高范式等级为BCNF

     供应     最高范式等级为BCNF

(2)某工厂的劳动人事管理系统涉及的实体有:

职工:属性有职工号、姓名、年龄

产品:属性有产品号、产品名、负责人职工号

零件:属性有零件号、名称、单价

供应商:属性有供应商号、姓名、地址、电话

其中,职工和产品之间有两种联系:生产和负责。一个职工可以参加多种产品的生产,一种产品可以有多个职工参加生产,使用天数来记工作量;一个职工只能负责一种产品生产,一种产品也只能有一个职工负责。供应商、产品和零件三者之间具有多对多的联系。即一个供应商可以供给若干产品多种零件,每个产品可以使用不同供应商供应的零件,每种零件可由不同供应商供给,有供应量作为属性。

1、画出该劳动人事管理系统的E-R图。

2、将该E-R图转换为对应的关系模式,并用下划线标示出各关系模式的主码。

     职工(职工号、姓名、年龄)

     产品(产品号、产品名、负责人职工号)

     零件(零件号、名称、单价)

     供应商(供应商号、姓名、地址、电话)

     生产(职工号产品号、天数)

     供应(产品号零件号供应商号、供应量)

3、指出转换以后的各关系模式的最高范式等级。

     职工     最高范式等级为BCNF

     产品     最高范式等级为BCNF

     零件     最高范式等级为BCNF

     供应商   最高范式等级为BCNF

     生产     最高范式等级为BCNF

     供应     最高范式等级为BCNF

三、实验指导

1、注意ER图的画法:实体用矩形表示,属性用椭圆表示,联系用菱形表示,实体、属性、联系之间用直线连接,联系分为三种类型,1:1,1:n,m:n。

2、将E-R图转换成关系模式的原则:

总体原则:一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的码为关系的主码。

联系的处理:一个联系转换为一个关系模式,有三种情况:如果联系为1:1,则每个实体的主码都是关系的候选码;如果联系为1:n,则n端实体的主码是关系的主码;如果联系为n:m,则每个实体的主码的组合是关系的主码。

3、将E-R图转换成关系模式时,主码要用下划线表示出来。

4、注意候选码和主码的区别:候选码是能够唯一标识一行记录的列或列的组合,主码是从候选码中选择一个作为主码。在一个表中,候选码可以有多个,但主码只能有一个。

目录
相关文章
|
SQL 存储 Go
SQL Server 创建与管理数据库实验报告
SQL Server 创建与管理数据库实验报告
165 1
|
存储 SQL Go
数据库:存储过程实验
一、实验目的及要求 目的 掌握存储过程的编写与调用 要求 掌握存储过程的编写;掌握存储过程的调用
89 0
|
7月前
|
关系型数据库 MySQL Java
西电数据库实验一:数据库远程连接的实验报告
姓名:贾瑞 学号:21009201172 实验一:数据库远程连接
|
7月前
|
NoSQL Java 关系型数据库
基于Java swing和mysql实现酒店管理系统(源码+数据库+运行指导视频+系统用户使用手册+系统PPT+数据库设计说明书+系统概要说明书+需求说明书+详细说明书)
基于Java swing和mysql实现酒店管理系统(源码+数据库+运行指导视频+系统用户使用手册+系统PPT+数据库设计说明书+系统概要说明书+需求说明书+详细说明书)
225 0
|
7月前
|
存储 SQL 数据库
数据库设计案例:电商系统数据库设计实践
数据库设计案例:电商系统数据库设计实践
718 1
|
SQL Oracle 关系型数据库
分布式数据库系统实验四
分布式数据库系统实验四
92 0
|
2月前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
87 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
7月前
|
存储 关系型数据库 数据库
关系型数据库数据库设计
关系型数据库设计是一个综合考虑多个方面的过程。在设计过程中,我们需要遵循一系列原则和实践,以确保数据库能够满足业务需求、保证数据的安全性和一致性,并具备良好的可伸缩性和可扩展性。
122 5
|
7月前
|
存储 监控 关系型数据库
关系型数据库数据库设计优化
【5月更文挑战第18天】关系型数据库数据库设计优化
84 1
|
7月前
|
存储 Oracle 关系型数据库
实验三 Oracle数据库的创建和管理
实验三 Oracle数据库的创建和管理
82 1
下一篇
DataWorks