使用PowerDesigner绘制ER图和生成Sql Server表

一.概念

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

二.PowerDesigner的使用

1.首先创建概念模型

使用PowerDesigner绘制ER图和生成Sql Server表_第1张图片

2.接下来我们选择长方形的这个小块,创建实体


3.选择attribute我们可以设置属性


    上面蓝色的小方格中,第一个是插入属性,第二个是末尾添加属性,第三个是从数据项中添加属性,第四个是重用已有的数据项。

       Add a DataItem 与 Reuse a DataItem的区别在于 Add a DataItem 情况下,选择一个已经存在的数据项,系统会自动复制所选择的数据项。如果您设置了UniqueCode选项,那系统在复制过程中,新数据项的Code会自动生成一个唯一的号码,否则与所选择的数据项完全一致。

    Reuse a DataItem情况下,只引用不新增,就是引用那些已经存在的数据项,作为新实体的数据项。

    下面会有如何设置UniqueCode的方法。

   ps: code为转化为数据库时的字段名,name是解释作用。

    4.操作方法

使用PowerDesigner绘制ER图和生成Sql Server表_第2张图片

    5.双加设置属性

使用PowerDesigner绘制ER图和生成Sql Server表_第3张图片

M表示强制,表示属性不能为空

P标识是否为主标识符

D标识是否显示在图形窗口中

    6.双击属性,设置属性内容

使用PowerDesigner绘制ER图和生成Sql Server表_第4张图片

Domain是域,域就是列的取值范围,比如性别的域就是(男,女)

   7. Standard checks

使用PowerDesigner绘制ER图和生成Sql Server表_第5张图片

参数 说明
Minimum 属性可接受的最小数
Maximum 属性可接受的最大数
Default 属性不赋值时,系统提供的默认值
Unit 单位,如公里、吨、元
Format 属性的数据显示格式
Lowercase 属性的赋值全部变为小写字母
Uppercase 属性的赋值全部变为大写字母
Cannot modify 该属性一旦赋值不能再修改
List Of Values 属性赋值列表,除列表中的值,不能有其他的值
Label 属性列表值的标签

    8.设置标识符
使用PowerDesigner绘制ER图和生成Sql Server表_第6张图片

        identifier可能只是助于理解设计CDM 和表的设计并没有太大关系

     9.数据项的唯一性代码选项和重用选项 使用Tools--->Model Options->Model Settings。在Data Item组框中定义数据项的唯一性代码选项(Unique Code)与重用选项(Allow Reuse)。 注意: 如果选择Unique Code复选框 ,每个数据项在同一个命名空间有唯一的代码,而选择Allow reuse ,一个数据项可以充当多个实体的属性。 

使用PowerDesigner绘制ER图和生成Sql Server表_第7张图片

    三.PowerDesigner生成Sql Server表

    3.1首先,我们画好E-R图

    使用PowerDesigner绘制ER图和生成Sql Server表_第8张图片

    这里的老师和学生是多对多的关系

    3.2.点击ools-->GeneratePhysical Data Model

使用PowerDesigner绘制ER图和生成Sql Server表_第9张图片

    接着选择我们要生成的数据库代码,这里是Sql Server2012

    3.3.也许,在我们执行的时候会出现这个错误

使用PowerDesigner绘制ER图和生成Sql Server表_第10张图片

    这可能是某些identifier(标识符)没设置好,设置标识符时,要在表的某一个属性上勾选P,有时候多余的次标识符也会报错。

这里的实验是多了一个次标识符student_id

    3.4.生成的物理模型如下

使用PowerDesigner绘制ER图和生成Sql Server表_第11张图片

    3.5.接着执行生成Sql语句,Database-->Generate DataBase

    使用PowerDesigner绘制ER图和生成Sql Server表_第12张图片

    选择我们要保存Sql文件的目录,出现这样,完成了

使用PowerDesigner绘制ER图和生成Sql Server表_第13张图片

    3.6.我们执行以下文件,成功了

    使用PowerDesigner绘制ER图和生成Sql Server表_第14张图片

    

你可能感兴趣的:(数据库)