数据库画er图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库画er图相关的知识,希望对你有一定的参考价值。
1. 设某医院住院管理数据库包括病人、医生、科室、病房以及护士等 5 个实体集,其中“病人”包括病历号、姓名、性别、入院时间、病症等属性;“医生”包括医生工号、姓名、年龄、职称等属性;“科室”包括科室编码、名称、办公地点、科室主任等属性;“病房”包括病房号、位置、床位数等属性;“护士”包括护士工号、姓名、年龄等属性。已知医院住院管理的基本语义如下:
①一个医生对应治疗多个病人,一个病人可有多个医生治疗;②一个科室有多个医生和护士,一个医生和护士只属于一个科室;③一个病人对应一个床位号,一个护士护理多个床位,一个床位有多个护士护理。
试根据上述语义完成下列各项数据库设计任务:
①设计满足上述要求的 E-R 图。
②将该 E-R 图转换成关系模式,并指出每一个关系的主码和外码。
方法/步骤
首先要了解ER图的核心要素:实体,属性,关系;实体就是一个个对象,比如猫;属性就是实体所有的某个属性,比如猫的性别;关系就是实体和实体之间或者实体内部之间的关系。
其次我们要了解ER图中怎么表示1中描述的三个核心要素:在ER图中,矩形代表实体,椭圆代表属性,菱形代表关系,各个形状之间用线段连接。
下面我们就以一个例子来一起画一个ER图,首先打开visio,我这里用的是2007,打开“新建”--->“常规”--->“基本框图”,新建一个空的界面,如下图所示:
我们在这张空的图里要表现如下的关系,对象1:学生(姓名,学号,系别);对象2:课程(课程名,课程编号,学分);关系:选课。我们先来画对象1,添加一个矩形框,三个椭圆框,如下图所示:
我用同样的方法,我们来建第二个对象课程,也是放一个矩形,三个椭圆形,然后用线把他们连接起来。
然后我们就来建这两个对象之间的关系,像图中加一个菱形,在菱形里写上选课两个字。如果没有菱形,可以加一个正方形然后旋转一下。
以上就将一个学生,选课的简单的ER图做好了,但是这只是简单的图。更专业的还可以这样做,打开“新建”--->“软件和数据库”--->“数据库模型图”,创建一个数据库模型图
然后拖进去一个实体,选中拖进去的实体,在下面的属性里定义好实体信息以及列,如下图所示:
以同样的方式定义课程实体,然后建关系表,拖进关系线段,连接两个实体,注意两头都是红色才是真正的连接起来了。会自动在关系属性里建立起连接,如下图所示:
到目前为止关系ER图就画完了,这种图ER图算是比较正规的一种了,比上面画的那一种要正规许多。当然,如果还想在专业化一些,可以用PowerDesign来绘制ER图。
E-R图中的主要构件,如图所示。其中较常用的有矩形、菱形、椭圆、线段等。矩形表示实体集,在框内写明实体名;菱形表示联系集,在框内写明联系名;椭圆表示属性,在内写明属性名;线段表示属性与相关的实体连接或者实体与联系相连。
实体:现实世界中可以区别于其他对象的”事件“或”物体“,例如,学校中的每一个人都是一个实体。而每个实体都有一组特性(属性)来表示,其中某一部分属性可以唯一标识实体,如职工工号。具有相同属性的实体集合即是实体集,在er图中用矩形表示。
联系:用线段分别与有关实体连接,并在线段上标注上联系的类型(1:1、1:n或m:n)。两个不同实体之间之间的联系可分为一对一联系记为1:1,一对多联系记为1:n,多对多联系记为m:n;两个以上不同实体集之间的联系可分为1:1:1,1:1:n,1:m:n,r:m:n。
属性:实体某方面的特性。例如,学生实体集具有学号、姓名、年龄、学年等等属性。可作如下分类:简单属性和复合属性,单值属性和多值属性,NULL属性,派生属性。
提问按照这个图怎么画ER图
回答套用模板就好了
提问……
怎么用navicat premium看数据库的er图
在navicat premium的左侧选中模式或表,在右上角有一个类似表格的图标,点击这个图标,可以看到当前所有表的ER图。 参考技术A 第一..我不知道在navicat上能否执行into outfie,个人感觉是不行...因为这个是系统命令.需要调用mysql的相关插件..显然navicat是不具备这个功能的..第二.. into outfile 放错位置了..需要放在 from的前面..
最后..据我所知..用navicat其实可以直接复制..或者直接导出...
语句没有错误的,是 into outfile 是放在sql语句结尾的,语句执行了,生成的文件应该在服务器上,我想如何设置能让生成的文件在我本地
以上是关于数据库画er图的主要内容,如果未能解决你的问题,请参考以下文章