1.1概念数据库模型
数据模型是现实世界中数据特征的抽象,数据模型应该满足一些需求
1.能够真实第模拟现实世界
2.容易被人们所理解
3.能被计算机实现
概念信息模型也称信息模型,以实体-联系(Entity-RelationShip)为理论基础,从用户的观点出发进行建模,主要用于数据库概念设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
1.2.实体,属性及标识符的定义
实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。例如,学校中的每个学生,医院中的每个手术。
每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干个属性来描述。如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。
实体集(Entity Set)是具体相同类型及相同性质实体的集合。例如学校所有学生的集合可定义为“学生”实体集,“学生”实体集中的每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。
实体类型(Entity Type)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号.............}。实体是实体类型的一个实例,在含义明确的情况下,实体、实体类型通常互换使用。
实体类型中的每个实体包含唯一标识它的一个或一组属性,这些属性称为实体类型的标识符(Identifier),如“学号”是学生实体类型的标识符,“姓名”、“出生日期”、“信址”共同组成“公民”实体类型的标识符。
有些实体类型可以有几组属性充当标识符,选定其中一组属性作为实体类型的主标识符,其他的作为次标识符。
引用:https://www.cnblogs.com/advocate/p/3730027.html
1.首先创建概念模型
2.接下来我们选择长方形的这个小块,创建实体
3.选择attribute我们可以设置属性
上面蓝色的小方格中,第一个是插入属性,第二个是末尾添加属性,第三个是从数据项中添加属性,第四个是重用已有的数据项。
Add a DataItem 与 Reuse a DataItem的区别在于 Add a DataItem 情况下,选择一个已经存在的数据项,系统会自动复制所选择的数据项。如果您设置了UniqueCode选项,那系统在复制过程中,新数据项的Code会自动生成一个唯一的号码,否则与所选择的数据项完全一致。
Reuse a DataItem情况下,只引用不新增,就是引用那些已经存在的数据项,作为新实体的数据项。
下面会有如何设置UniqueCode的方法。
ps: code为转化为数据库时的字段名,name是解释作用。
4.操作方法
5.双加设置属性
M表示强制,表示属性不能为空
P标识是否为主标识符
D标识是否显示在图形窗口中
6.双击属性,设置属性内容
Domain是域,域就是列的取值范围,比如性别的域就是(男,女)
7. Standard checks
参数 | 说明 |
Minimum | 属性可接受的最小数 |
Maximum | 属性可接受的最大数 |
Default | 属性不赋值时,系统提供的默认值 |
Unit | 单位,如公里、吨、元 |
Format | 属性的数据显示格式 |
Lowercase | 属性的赋值全部变为小写字母 |
Uppercase | 属性的赋值全部变为大写字母 |
Cannot modify | 该属性一旦赋值不能再修改 |
List Of Values | 属性赋值列表,除列表中的值,不能有其他的值 |
Label | 属性列表值的标签 |
identifier可能只是助于理解设计CDM 和表的设计并没有太大关系
9.数据项的唯一性代码选项和重用选项 使用Tools--->Model Options->Model Settings。在Data Item组框中定义数据项的唯一性代码选项(Unique Code)与重用选项(Allow Reuse)。 注意: 如果选择Unique Code复选框 ,每个数据项在同一个命名空间有唯一的代码,而选择Allow reuse ,一个数据项可以充当多个实体的属性。
3.1首先,我们画好E-R图
这里的老师和学生是多对多的关系
3.2.点击ools-->GeneratePhysical Data Model
接着选择我们要生成的数据库代码,这里是Sql Server2012
3.3.也许,在我们执行的时候会出现这个错误
这可能是某些identifier(标识符)没设置好,设置标识符时,要在表的某一个属性上勾选P,有时候多余的次标识符也会报错。
这里的实验是多了一个次标识符student_id
3.4.生成的物理模型如下
3.5.接着执行生成Sql语句,Database-->Generate DataBase
选择我们要保存Sql文件的目录,出现这样,完成了
3.6.我们执行以下文件,成功了