文档库 最新最全的文档下载
当前位置:文档库 › 基于ER图的数据库设计与简单操作管理信息系统

基于ER图的数据库设计与简单操作管理信息系统

基于ER图的数据库设计与简单操作管理信息系统
基于ER图的数据库设计与简单操作管理信息系统

实验报告

实验名称:基于ER图的数据库设计与简单操作

班级:

姓名:

学号:

实验时间: 2010年5月18日

成绩:指导老师:

一、实验目的:

(1能够正确运用数据库的基本理论和方法。

(2熟悉常用关系型数据库的设计和基本操作。

(3熟悉关系数据库规范化设计理论,能够设计并建立科学合理的数据库,正确建立数据库中表与表之间的关系。

(4进一步正确理解数据库设计思路,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。

二、实验设备及主要内容

实验设备:“Microsoft SQL Server”——“企业管理器”和“查询分析器”主要内容:

1.高等院校学生补考管理业务需求描述。高等院校补考管理系统应具备编辑补考学生信息、安排补考时间地点等基本管理功能,具体要求如下:

3对教室的编号、地点和容纳人数进行编辑。

4自动安排补考的时间、地点(即教室。

5录入学生的补考成绩。

6分别按照院系、专业、班级等查询参加补考的学生信息。

7按照补考的时间和地点查询参加补考的学生信息。

8查询和打印补考时间、地点的安排。

9查询和打印补考不及格学生的信息。

2.设计数据库。根据上述业务描述,设计数据库总体方案,明确数据库中表的结构,各表中关键字的设置,表与表之间的关系。

3.根据功能需求,以SQL语句的形式分类列出系统应涉及的数据操作。

4.利用Access、VFP或SQL server建立数据库,并成功实现基本数据操作。

5.提交书面实验报告。

三、实验步骤

步骤一:按照上述要求进行数据库和表的设计。具体包括:领域描述、概念模型用E-R图描述、从E-R图导出关系数据模型。

步骤二:选择Access、VFP或SQL server实现数据库操作。

1、概念模型用E-R图描述

2、从E-R图导出的关系数据模型

学生补考管理系统的逻辑结构如下:

院系信息表:Department(deptID,deptName

班级信息表:Class(className,studentNum,deptID

课程信息表:Course(courselD,courseName,deptID

学生信息表:Student(studentID,studentName,className

补考记录表:Bk—stud(studentID,courseID,reason,score

3、选择SQL server、Access、VFP实现数据库操作的基本步骤。用MS SQLSEVER实现数据库的操作

1使用“企业管理器”实现数据库的操作

①创建数据库。

点击桌面上“开始”菜单,选择“Microsoft SQL Server”——

“企业管理器”,进入控制台根目录界面。双击目录Microsoft SQL

Servers进入子目录SQL Server组。双击子目录SQL

Server组进入下一级子目录“local”,继续双击“local”,将出现如图1所示的“local”目录下的全部内容。

图1

双击数据库文件夹。

在右边空白处点右键,出现如图2所示的界面。

点击新建数据库进入数据库属性界面,如图3所示。在该界面里,我们为所创建的数据库起个名称如“temdb”,点“确定”按钮。

图2

图3

②创建数据库表。

在图2中双击“temdb”图标,进人数据库属性界面。点击“确定”按钮,进入t emdb数据库项目界面,如图4所示。

图4

在空白处点右键,选择“新建/表”菜单,将进入图5所示的界面。在该界面我们将完成表的结构的设计。

以院系信息表为例来完成表结构的设计。在“列名”下填入字段的名称,如“deplD ”;在第二列“数据类型“的下拉框里选择我们需要的类型,在这里选择char型的,根据要求将长度改为10个字符。因为deplD是主键,所以我们点击工具栏里的小钥匙,将depl D设为主键。按照同样的方法可以完成字段depName

的设置。完成之后的界面如图6所示。然后点击工具栏里的保存图标,将出现一个保存界面,在该界面中输入表的名称。在文本框里输入“depar

tment”,如图7所示,将该表保存为d epartment。

图5

图6

图7

按照同样的方法可以完成表class、course、student、bk—stud的结构设计。

③向表中插入数据(仍然以院系信息表为例。

在图8所示的“企业管理器”环境里选中“department”点右键,选择菜单“打开表/返回所有的行”,进入图9所示的添加表中的数据界面。将用户数据依次填入,关闭该界面之后,数据自动存人数据库。按照同样的方法可以依次完成对表class、course、stude nt、bk—stud的数据的添加。

图8

图9

2使用查询分析器实现对表的操作。

①创建数据库。

点击桌面上菜单“开始”,选择“Microsoft SQL Server”——

“查询分析器”,打开查询分析器。刚打开的查询分析器中有一查询窗口,如图10所示。

在查询窗口中输入SQL语句。下面的这条语句创建名为temdb的数据库,

图10

并创建相应的主文件和事务日志文件:

create database temdb

点击查询分析器工具栏上的执行按钮(或右键点击查询窗口,在弹出菜单中选择“执行”。消息窗口显示命令执行结果。

②创建表。

点击桌面上“开始”菜单,选择“Microsoft SQL Server”一“查询分析

器”,打开查询分析器。刚打开的查询分析器中有一查询窗口。

在查询窗口中输入SQL语句(注意:SQL语句中的所有标点符号要用英文标

点,下同,如:

create table temdb.dbo.department(deptlD char(2primary key,deptName

char(20

点击查询分析器工具栏上的执行按钮(或右键点击查询窗口,在弹出菜单中选择“执行”,执行结果见图11。消息窗口显示命令执行结果。

图11

根据以上步骤,分别执行以下SQL语句创建表class、course、studentj bk—stud: create table temdb.dbo.class(

className char(7primary key,

studentNum int,

deptID char(2foreign key references department

create table temdb.dbo.course(

courselD char(6,

courseName char(40,

deptID char(2

create table temdb.dbo.student(

studentID char(9primary key,

studentName char(6,

className char(7foreign key references class

create table temdb.dbo.bk_stud(

studentID char(9,

courselD char(6,

reason char(20,

score int,

primary key(studentID,courselD,

foreign key(studentIDreferences student,

foreign key(courseIDreferences course

以上SQL语句正确执行后,可以从企业管理器中看到已创建的五个表。这个表的类型都是“用户”,如图12所示。

图12

③向表中插入数据。

在查询窗口中执行SQL语句,如:

insert into terndb.dbo.department values('06','管理学院'向d epartment 表中插人数据,消息窗口显示执行结果正确,如图13所示。

图13

在查询窗口中分别执行以下SQL语句,完成基本数据的插入。i’nsert into temdb.dbo.department values(’08’,’土木学院’

insert into temdb.dbo.class values(’信管011’,40,’06’

insert into temdb.dbo.class values(’信管012’,38,’06’

insert into temdb.dbo.class values(’工本011’,38,’08’

insert into temdb.dbo.course values('060123’,’管理信息系统’,’06’insert into temdb.dbo.course values('060125’,’数据库系统原

理’,’06’

insert into temdb.dbo.cou rse values('080110’,’高层建筑’,’08’

insert into temdb.dbo.student values('200106001’,’马小跳’,’信

管011’

insert into temdb.dbo.student values('200106150’,’李二狗’,’信

管012’

insert into temdb.dbo.student values('200108110’,’张三丰’,’工本011’

insert into temdb.dbo.bk—stud v alues('200106001’,’060123’,’因病缺考’,89

insert into temdb.dbo.bk—stud values('200106001’,’080110’,’因病缺考’,78

insert into temdb.dbo.bk—stud values('200106150’,’060125’,’缓考’,75

insert into temdb.dbo.bk—stud values('2001081i0’,’060123’,’考试作弊’,60

insert into temdb.dbo.bk—stud values(’200108110’,’080110’,’因故缓考’,66

④查询表中数据。

单表查询:查询d epartment表的全部信息,在查询窗口中执行以下SQL语句: Select + from department

本查询语句中“+”代表要显示表的全部属性。

自己动手执行以下SQL语句,观察执行结果有什么不同。

Select+from department where deptlD=’06’

两表查询:以上查询信息均来自同一个表,但有的查询信息要来自多个表,如查询所有课程名称及其开课院系,则需要同时查询表course和depa~一ment, SQL语句为:

select course.courseName,department.deptName

from course,department

where course.deptID=department.deptID

三表查询:查询学生姓名、补考课程名称和补考成绩,需要同时查询表student、bk —stud、course,SQL语句为:

select student.studentName,course.CourseName,bk—stud score

from student,bk—stud,course

where student.studentID=bk—stud studentID and bk—stud courselD=

course.courseID执行结果见图14。

图14

⑤修改表中数据。

在查询窗口中执行以下SQL语句:

UPDATE Student

SET studentID='200106100'

WHERE studentName='马小跳'

这个操作的结果是把“马小跳”的学号变为200106100。

⑥删除表中的行。

在查询窗口中执行以下SQL语句:

DELETE FROM student

WHERE studentID=’200106100’

这条语句的执行结果是删除表student中学号为200106100的行。

教学管理系统数据库ER图及SQL语句

教学管理系统 一、系统功能需求 学校教务管理系统是针对学校的大量信息处理工作而开发的管理软件,完成的主要功能如下: (1) 学生基本信息管理:能够对学生基本信息进行输入、删除、修改。学生基本信息包括:学号、姓名、性别、出生日期、入学成绩、所在系号。 (2) 系部基本信息管理:系部的基本信息输入、修改、删除。系部基本信息包括:系号、系名称、系的简介。 (3) 课程信息管理:课程信息的输入、修改、删除。课程信息包括:课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间。 (4) 教职工信息管理:教职工信息的输入、修改、删除。教职工信息包括:职工号、姓名、性别、出身年月、所在系号、职称、技术专长。 (5) 选课管理:学号、学生、课程号、课程名称、上课教师姓名、系号 每学期所选课程的学分不能超过15分。学生可以同时选修一门或多门课程。可以同时为多个学生选修某一门或某几门课程。可以删除和修改选课信息。 (6) 成绩管理可以按课程输入和修改成绩,也可以按学生输入和修改成绩。 (7) 信息查询 可以按学号、姓名、系号查询学生基本信息。 可以按职工号、姓名、系号查询教职工基本信息。 可以按系号、系名称查询系的基本信息。 可以按课程号、课程名称、上课教师姓名查询课程基本信息。 按学号、课程号、课程名称、上课教师姓名、系号查询学生成绩,内容包括课程基本情况。若查询涉及多门课程,则按课程分组。 每门课程按总评成绩从高分到低分给出选修该门课程的所有学生的成绩(平时成绩、考试成绩和总评成绩)。 (8) 统计报表 a、成绩报表:内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学分),选课学生名单(学号、姓名、性别),每个学生的平时成绩、考试成绩和总评成绩。 能按课程号、课程名称、教师姓名输出对应课程的成绩报表。 b、能够根据课程、授课教师统计成绩>=90分、>=80分、>=70分、>=60分及不及格学生的人数及比例。 二、任务描述 1、根据需求描述,完成数据概念模型设计,画出E-R图; 2、优化E-R图,给出数据逻辑模型; 3、将逻辑模型转换成物理模型并创建数据库和数据表。要求数据表能尽量实现数 据完整性要求。

数据库概念设计ER图

数据库概念设计 ER图 注:提交时,将文件名命名为(数据库系统概论ER图练习:学号+姓名+日期) 第一题:参考 大学实行学分制,学生可根据自己的情况选课。每名学生可同时选修多门课程,每门课程可由多位教师主讲;每位教师可讲授多门课程。 指出学生与课程的联系类型。 指出课程与教师的联系类型。 若每名学生有一位教师指导,每个教师指导多名学生,则学生与教师是何联系? 在原E-R图上补画教师与学生的联系,并完善E-R图。

第二题:将ER图转化为关系模式 单位 职工 第三题:画ER图 职工:职工号、姓名、地址和所在部门 部门:部门所有职工、部门名、经理和销售的产品 产品:产品名、制造商、价格、型号和产品内部编号 制造商:制造商名称、地址、生产的产品名和价格 部门有很多职工,职工仅在一个部门工作; 部门销售多种产品,这些产品也在其它部门销售; 制造商生产多种产品,其它制造商也制造这些产品。

画ER图 第四题:画ER图 科室:科名、科地址、科电话、医生姓名 病房:病房号、床位号、所属科室名 医生:姓名、职称、所属科室名、年龄、工作证号 病人病历号、姓名、性别、诊断、主臂医生、病房号一个科室有多个病房、多个医生; 一个病房只能属于一个科室; 一个医生只属于一个科室,但可负责多个病人的诊治;

一个病人的主管医生只有一个。 完成如下设计: 设计该计算机管理系统的E-R图。 将该E-R图转换为关系模式结构。 指出转换结果申每个关系模式的候选码。 第五题:画ER图 某田径运动会组委会需要一运动会管理系统,现提出如下需求。该系统中存在运动队和运动会两方面的实体。 1.运动队方面 运动队:队名、教练姓名 队员:编号、姓名、性别、项名 其中,一个运动队有多个队员,一个队员仅属于一个运动队,一个队一般有一个教练,一个队员可参加多个项目 2.运动会方面 运动队:队编号、队名、教练姓名 项目:项目名、参加运动队编号、场地 其中,一个项目可由多个队参加,一个运动队可参加多个项目,一个项目一个比赛场地。现要求:(1).分别设计运动队和运动会的局部ER图。

数据库ER图习题汇总

7、一个图书馆借阅管理数据库要求提供下述服务: (1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号惟一标识。 (2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。 我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。 (3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息下相应出版社增购有关书籍。我们约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有惟一性。 根据以上情况和假设,试作如下设计: (1)构造满足需求的E-R图。 (2)转换为等价的关系模式结构。 答:(1)满足上述需求的E-R图如图11所示。 (2)转换为等价的关系模式结构如下: 借书人(借书证号,姓名,单位) 图书(书号,书名,数量,位置,出版社名) 出版社(出版社名,电报编号,电话可,邮编,地址) 借阅(借书证号,书号,借书日期,还书日期)

8、工厂(包括厂名和厂长名)需建立一个管理数据库存储以下信息: (1)一个工厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。 (2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种。 (3)一个车间生产多种产品,产品有产品号和价格。 (4)一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量和价格。 (5)一个产品由多种零件组成,一种零件也可装配出多种产品。 (6)产品与零件均存入仓库中。 (7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。 试:(1)画出该系统的E-R图。 (2)给出相应的关系模式。 (3)画出该系统的层次模式图。 答:(1)该系统的E-R图如图12所示。 各实体的属性为: 工厂:厂名、厂长姓名 车间:车间号、车间主任姓名、地址、电话 工人:职工号、姓名、年龄、性别、工种 仓库:仓库号、仓库主任姓名、电话 零件:零件号、重量、价格 产品:产品号、价格 (2)相应的关系模式如下: 工厂(厂名、厂长姓名) 车间(车间号、车间主任姓名、地址、电话、厂名) 工人(职工号、姓名、年龄、性别、工种、车间号)

如何画数据库ER图

如何画数据库ER图 数据库设计中重要的一环首先就是概念设计,也就是说,要从实际问题出发,排除非本质的东西,抽象出现实的数据结构之客观规律——即画出数据结构图——ER图。这是数据库设计的重点,也是数据库设计的难点。 那么,如何才能正确地反映客观现实,将ER图画好呢? 答案是,必须进行正确的需求分析。那么如何进行需求分析呢?需求分析一般有两种方法,一种是结构化分析(SA),一种是面向对象分析(OOA).通过这两种方法的实施以后,都可以得到比较正确的ER图。现在以下面的实际问题为例,通过结构化分析(SA)方法的应用,讲述如何得到比较正确的ER图。 ( 一 ) 校务管理系统 在要建立的系统中,有以下功能: 1.管理老师的功能:录入老师情况(姓名.地址.所教课程), 老师缺课记录(名字.时间.原因. 课程) 2.管理学生的功能: 录入学生情况 ( 姓名 . 所选课程 . 成绩 ) 3.教务主任的功能 : 查询统计 1: 教师情况 2: 学生总成绩 3: 学生平均成绩 要求: 1)用结构化方法画出系统顶层图、 0 层图,数据字典。 2)画出该系统的数据模型ER图。 一、结构化分析的需求分析 1)分析实际情况 根据实际情况,我们得到一下情况: (一)教师任课流程:

(二)学生选择课程流程: 2)画数据流图 (一、)顶层数据流图

3)画数据字典DD (略)和软件初始结构图 1基本数据=学生基本信息|教师基本信息|课程基本信息|教室基本信息 2教师任课信息=教师任课数据|教师考勤信息 3学生选课请求和成绩=学生选课请求|学生成绩 学生基本信息=学号+姓名+性别+年龄+专业+班级 。。。。。。 4

数据库ER图

1.设某商业集团数据库中有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。 公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 (1)试画出E-R图,并在图上注明属性、联系的类型。 (2)将E-R图转换成关系模型。 解:(1) E-R图 (2)这个E-R图可转换3个关系模式: 公司(公司编号,公司名,地址) 仓库(仓库编号,仓库名,地址,公司编号) 职工(职工编号,姓名,性别,仓库编号,聘期,工资) 2. 为某百货公司设计一个E-R模型。 百货公司管辖若干连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于一家商店。 实体类型“商店”的属性有:店号、店名、店址、店经理。 实体类型“商品”的属性有:商品号、品名、单价、产地。 实体类型“职工”的属性有:工号、姓名、性别、工资。 在联系中应反映出职工参加某商店工作的开始时间、商店销售商品的月销售量。 (1)试画出反映商店、商品、职工实体类型及其联系类型的E-R图。 (2)将E-R图转换成关系模型。

转换为等价的关系模式结构如下: 商店(店号,店名,店址,店经理) 商品(商品号,品名,单价,产地) 职工(工号,姓名,性别,工资,店号,开始时间) 经营(店号,工号,月销售量) 3.某体育运动锦标赛有来自世界各国运动员组成的体育代表团参赛各类比赛项目,包括以下信息: 代表团:团编号、地区、住所 运动员:运动员编号、姓名、年龄、性别 比赛项目:项目编号、项目名、级别 项目类别:类别编号类别名、主管 其中,一个代表团由若干运动员组成,一名运动员可以参加多个比赛项目,每名运动员参加每个比赛项目会有一个比赛成绩和名次,每个项目类别包含多个比赛项目,每个比赛项目只能属于一个项目类别。 (1)试为该锦标赛的比赛情况设计一个ER图 (2)将E-R图转换成关系模型,并注明主键和外键。 解:满足上述需求的ER图如图所示:

(完整版)数据库10个ER图练习题(只有ER图)

第1题: 设有商店和顾客两个实体,“商店”有属性:商店编号、商店名、地址、电话,“顾客”有属性:顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。 ①试画出ER图,并注明属性和联系类型。(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分) 商店(商店编号,商店名,地址,电话) 顾客(顾客编号,姓名,地址,年龄,性别) 消费(商店编号,顾客编号,消费金额,日期) 第2题: 假设每个学生选修若干门课程,且每个学生每选一门课只有一个成绩,每个教师只担任一门课的教学,一门课由若干教师任教。“学生”有属性:学号、姓名、地址、年龄、性别。“教师”有属性:职工号、教师姓名、职称,“课程”有属性:课程号、课程名。 ①试画出ER图,并注明属性和联系类型。(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分)

学生(学号,姓名,地址,年龄,性别) 课程(课程号,课程名) 教师(职工号,教师姓名,职称,课程) 选课(学号,课程号,成绩) 第3题: 设某商业公司数据库中有三个实体集,一是”公司”实体集,属性有公司编号、公司名、地址等;二是”仓库”实体集,属性有仓库编号、仓库名、地址等;三是”职工”实体集,属性有职工编号、姓名、性别等。每个公司有若干个仓库,每个仓库只能属于1个公司,每个仓库可聘用若干职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 ①试画出E-R图(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分)

数据库个ER图练习题只有ER图

第1题: 设有商店和顾客两个实体,“商店”有属性:商店编号、商店名、地址、电话,“顾客”有属性:顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。 ①试画出ER图,并注明属性和联系类型。(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分) 商店(商店编号,商店名,地址,电话) 顾客(顾客编号,姓名,地址,年龄,性别) 消费(商店编号,顾客编号,消费金额,日期) 第2题: 假设每个学生选修若干门课程,且每个学生每选一门课只有一个成绩,每个教师只担任一门课的教学,一门课由若干教师任教。“学生”有属性:学号、姓名、地址、年龄、性别。“教师”有属性:职工号、教师姓名、职称,“课程”有属性:课程号、课程名。 ①试画出ER图,并注明属性和联系类型。(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分) 学生(学号,姓名,地址,年龄,性别) 课程(课程号,课程名) 教师(职工号,教师姓名,职称, 课程) 选课(学号,课程号,成绩) 第3题: 设某商业公司数据库中有三个实体集,一是”公司”实体集,属性有公司编号、公司名、地址等; 二是”仓库”实体集,属性有仓库编号、仓库名、地址等;三是”职工”实体集,属性有职工编号、姓名、性别等。每个公司有若干个仓库,每个仓库只能属于1个公司,每个仓库可聘用若干职工,每 个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 ①试画出E-R图(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分)

仓库(仓库编号,仓库名,地址,公司编号) 公司(公司编号,公司名,地址) 职工(职工编号,姓名,性别, 仓库编号,聘期,工资) 第4题: 某研究所有多名科研人员,每一个科研人员只属于一个研究所,研究所有多个科研项目,每个科研项目有多名科研人员参加,每个科研人员可以参加多个科研项目。科研人员参加项目要统计工作量。“研究所”有属性:编号,名称、地址, “科研人员”有属性:职工号、姓名、性别、年龄,职称。“科研项目”有属性: 项目号、项目名、经费。 ①试画出ER图,并注明属性和联系类型。(5分) ②将E-R图转换成关系模型,并注明主码和外码(5分) 研究所(编号,名称,地址) 科研人员(职工号,姓名,性别,年龄,职称, 编号) 科研项目(项目号,项目名,经费, 编号) 参^加(职工号,项目号,工作量) 第5题: 现有学生报考系统,实体“考生”有属性:准考证号、姓名、年龄、性别,实体“课程”有属性:课程编号、名称、性质。一名考生可以报考多门课程,考 运动员 m 项目号名称最好成绩

数据库概念设计ER图实例集

数据库概念设计ER图实例集 例1.某田径运动会组委会需要一运动会管理系统,现提出如下需求。该系统中存在运动队和运动会两方面的实体。 1.运动队方面 运动队:队名、教练姓名 队员:编号、姓名、性别、项名 其中,一个运动队有多个队员,一个队员仅属于一个运动队,一个队一般有一个教练,一个队员可参加多个项目 2.运动会方面 运动队:队编号、队名、教练姓名 项目:项目名、参加运动队编号、场地 其中,一个项目可由多个队参加,一个运动队可参加多个项目,一个项目一个比赛场地。 现要求:(1).分别设计运动队和运动会的局部ER图。 (2).将它们合并为一个全局E-R图。 (3).合并时存在什么冲突,如何解决?

运动队局部ER图: ER图: 运动会局部 存在的冲突 (1).命名冲突:项名、项目名异名同义,统一命名为项目名; (2).结构冲突:项目在两个局部ER图中,一个做多值属性,一个作实体。统一为实体;运动队在两个局部图里的结构不一致也需统一。

例2.上海可的商业连锁集团需要建立信息系统。该系统中存在3个实体集,一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。 商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可以放在多个商店销售,每个商店销售的一种商品有月销售量;商店与职工之间存在“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和工资。 (1).试画出E-R 图。 (2).将该E-R 图转换成关系模式,并指出主码和外码。 ER 图: 关系模式: 商店(商店编号,商店名,地址) 职工(职工编号,姓名,性别,业绩,商店编号,聘期,工资) 商品(商品号,商品名,规格,单价)

数据库ER图

1 .设某商业集团数据库中有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库” 实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。 公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 (1)试画出E-R图,并在图上注明属性、联系的类型。 (2)将E-R图转换成关系模型。 (2)这个E-R图可转换3个关系模式: 公司(公司编号,公司名,地址) 仓库(仓库编号,仓库名,地址,公司编号) 职工(职工编号,姓名,性别,仓库编号,聘期,工资) 2.为某百货公司设计一个E-R模型。 百货公司管辖若干连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于实体类型“商店”的属性有:店号、店名、店址、店经理。 实体类型“商品”的属性有:商品号、品名、单价、产地。 实体类型“职工”的属性有:工号、姓名、性别、工资。 在联系中应反映出职工参加某商店工作的开始时间、商店销售商品的月销售量。 (1)试画出反映商店、商品、职工实体类型及其联系类型的E-R图。 (2)将E-R图转换成关系模型。家商店。 解:⑴E-R

转换为等价的关系模式结构如下: 商店(店号,店名,店址,店经理 ) 商品(商品号,品名,单价,产地 ) 职工(工号,姓名,性别,工资,店号,开始时间 ) 经营(店号,工号,月销售量) 3. 某体育运动锦标赛有来自世界各国运动员组成的体育代表团参赛各类比赛项目,包括以下信息: 代表团:团编号、地 区、住所 运动员:运动员编号、姓名、年龄、性别 比赛项目:项目编号、项目名、级别 项目类别:类别编号类别名、主管 其中,一个代表团由若干运动员组成,一名运动员可以参加多个比赛项目,每名运动员参加每个比赛项目会有 一个比赛成绩和名次,每个项目类别包含多个比赛项目,每个比赛项目只能属于一个项目类别。 (1) 试为该锦标赛的比赛情况设计一个 ER 图 (2) 将E-R 图转换成关系模型,并注明主键和外键。 解:满足上述需求的EF 图如图所示 :

数据库ER图基础概念整理

数据库ER图基础概念整理 ER图分为实体、属性、关系三个核心部分。实体是长方形体现,而属性则是椭圆形,关系为菱形。ER图的实体(entity)即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),例如学生实体里包括张三、李四等,实体成员(entity member)/实体实例(entity instance)不需要出现在ER图中。ER图的属性(attribute)即数据对象所具有的属性,例如学生具有姓名、学号、年级等属性,用椭圆形表示,属性分为唯一属性(unique attribute)和非唯一属性,唯一属性指的是唯一可用来标识该实体实例或者成员的属性,用下划线表示,一般来讲实体都至少有一个唯一属性。ER图的关系(relationship)用来表现数据对象与数据对象之间的联系,例如学生的实体和成绩表的实体之间有一定的联系,每个学生都有自己的成绩表,这就是一种关系,关系用菱形来表示。ER图中关联关系有三种: 1对1(1:1):1对1关系是指对于实体集A与实体集B,A中的每一个实体至多与B中一个实体有关系;反之,在实体集B中的每个实体至多与实体集A中一个实体有关系。1对多(1:N):1对多关系是指实体集A与实体集B中至少

有N(N>0)个实体有关系;并且实体集B中每一个实体至多与实体集A中一个实体有关系。多对多(M:N):多对多关系是指实体集A中的每一个实体与实体集B中至少有 M(M>0)个实体有关系,并且实体集B中的每一个实体与实体集A中的至少N(N>0)个实体有关系。下面是个简单的例子:ER实体补充讲解:ER的实体还会细分为弱实体和复合实体:弱实体:一个实体必须依赖于另一个实体存在,那么前者是弱实体,后者是强实体,弱实体必须依赖强实体存在,例如上图的学生实体和成绩单实体,成绩单依赖于学生实体而存在,因此学生是强实体,而成绩单是弱实体。弱实体和强实体的联系必然只有1:N或者1:1,这是由于弱实体完全依赖于强实体,强实体不存在,那么弱实体就不存在,所以弱实体是完全参与联系的,因此弱实体与联系之间的联系也是用的双线菱形。上面实例根据弱实体的情况更改如下图:复合实体:复合实体也称联合实体或桥接实体,常常用于实现两个或多个实体间的M:N联系,它由每个关联实体的主玛组成,用长方体内加一个菱形来表示。下图就是一个典型的复合实体,因为只是举例,相对粗糙,用户和商品两个实体是M:N的关系,中间又订单这个实体联系,因此订单这个实体是一个复合实体,同时如果用户实体不存在,就没有订单实体的存在,因此对于用户实体来讲订单是弱实体,同理商品实体如果不存在,同样不存在订单实体,因此

数据库ER模型答案

5.11 设某商业集团数据库中有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。 商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。 (1) 试画出ER 图,并在图上注明属性、联系的类型。 (2) 将ER 图转换成关系模型,并注明主键和外键。 解:(1) ER 图如图5.1所示。 M 1 N N 5.12 设某商业集团数据库中有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。 公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 (1) 试画出ER 图,并在图上注明属性、联系的类型。(2) 将ER 图转换成关系模型,并注明主键和外键。 解:(1) ER 图如图5.2 1 N 1 N 地址 商店编号 职工 商店 商店名 业绩 姓名 性别 商品 商品号 规格 月薪 月销售量 商品名 销售 聘用 单价 职工编号 聘期 (2)这个ER 图可转换4个关系模式: 商店(商店编号,商店名,地址) 职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪) 商品(商品号,商品名,规格,单价) 销售(商店编号,商品号,月销售量) 地址 公司编号 职工 公司 公司名 姓名 性别 仓库 工资 仓库名 仓库编号 聘期 聘用 隶属 职工编号 地址 (2)这个ER 图可转换3个关系模式: 公司(公司编号,公司名,地址) 仓库(仓库编号,仓库名,地址,公司编号) 职工(职工编号,姓名,性别,仓库编号,聘期,工资)

数据库设计-ER图

数据库设计的基本步骤 (1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。 (2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示。 (3)逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型。 (4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构。 (5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。 (6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。 1 数据库设计概述 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据。 数据库设计的基本步骤: ?需求分析 ?概念结构设计 ?逻辑结构设计 ?物理结构设计 ?数据库的建立和测试 ?数据库运行和维护。

数据库各阶段设计描述

2 概念结构设计 在早期的数据库设计,在需求分析阶段后,就直接进行逻辑结构设计。由于此时既要考虑现实世界信息的联系与特征,又要满足特定的数据库系统的约束要求,因而对于客观世界的描述受到一定的限制。同时,由于设计时要同时考虑多方面的问题,也使设计工作变得十分复杂。1976年P.P.S.Chen提出在逻辑结构设计之前先设计一个概念模型,并提出了数据库设计的实体--联系方法(Entity--Relationship Approach)。这种方法不包括深的理论,但提供了一个简便、有效的方法,目前成为数据库设计中通用的工具。 有许多商业软件支持E-R模型,如Sybase公司的PowerDesigner DataArchitect(最新版本v9.5.1 for Windows)、微软公司Microsoft InfoModeler (VisioModeler)等。

数据库学生成绩管理系统ER图

系统需求分析: 该学生成绩管理系统主要用于管理高校学生的考试成绩,提供学生成绩的录入、修改、查询、等各种功能。成绩由各系的任课老师录入,或教务处人员统一录入。学生成绩录入后由各系系秘书签字确认,只有教务处拥有对学生成绩的修改权限。 用户的具体需求分析: (1)教师:负责成绩的录入,能够在一定的权限内对学生的成绩进行查询,可以对自己的登录密码进行修改以及个人信息的修改等基本功能。 (2)系统管理员:与老师的功能相似(每个系都设有一管理员) 另外管理员具有用户管理功能,能够对新上任的老师和新注册的学生行进添加,并能删除已经毕业和退休的老师。用户分为管理员、教师用户、学生用户三类。不论是管理员或教师用户,还是学生用户都需要通过用户名和口令进行登录。用户名采用学生的学号和教师的教号,所以规定只能包括数字。密码也只能是数字,用户只有正确填写用户名和密码才可以登入,进行下一步操作。用户名被注销后,用户将不再拥有任何权限,并且从数据表中删除该用户的信息。 (3)学生:能够实现学生自己成绩和个人信息的查询、登录密码的修改等基本功能。概念模型设计: 由前面的系统需求分析得到实体主要有5个:教师、学生、管理员、课程、成绩。 学生有属性:学号、姓名、性别、系名、专业、出生日期 教师有属性:教师号、姓名、性别、院系、联系电话 管理员属性:用户名、密码 课程有属性:课程号、课程名、学分、教师 成绩有属性:学号、姓名、课程号、课程名、成绩、授课老师

1)教师与课程之间的关系: 教师与课程之间是1: n的关系,即一个老师只能教一门课程,一门课程可以由多个老师讲授。 (教师与学生E-R图)

相关文档
相关文档 最新文档