使用PowerDesigner设计SQL Server数据库NEW.docx
《使用PowerDesigner设计SQL Server数据库NEW.docx》由会员分享,可在线阅读,更多相关《使用PowerDesigner设计SQL Server数据库NEW.docx(18页珍藏版)》请在冰豆网上搜索。
![使用PowerDesigner设计SQL Server数据库NEW.docx](https://file1.bdocx.com/fileroot1/2023-1/25/2439c152-5ecb-4d3b-9118-52f0ee514557/2439c152-5ecb-4d3b-9118-52f0ee5145571.gif)
使用PowerDesigner设计SQLServer数据库NEW
使用PowerDesigner设计SQLServer数据库
工具:
SybasePowerDesigner12.5
MicrosoftSQLServer2008
一、设计概念数据模型
1、打开PowerDesigner软件,设计“概念数据模型”(ConceptualDataModel),它通常用在概要设计阶段。
2、设计表结构:
从“Palette(工具面板)”选择“Entity”添加一个实体:
(注意:
如果Palette(工具面板)没有显示,可以在工具栏-->右键-->选择“Palette”(打勾选中)。
右键“Entity_1”,选择属性“propertities”,命名“userinfo”:
选择“Attributes”,添加实体属性:
“userinfo”属性如下:
依次添加“cardinfo”,“transinfo”的表结构。
添加“Relationship”关系:
请注意:
(1)在所有实体对象中,属性的取名不能重复。
(2)当添加引用完整性时,外键表不必添加主键表的主键字段作为外键。
因为,在添加“Relationship”关系之后,再转换为物理模型以后,外键表将自动添加外键字段列。
(3)在添加“Relationship”关系时,起始点实体默认为主键表,结束点实体默认为外键表。
当然,可以在“Relationship”中改变。
概念数据模型如下:
二、建立物理数据模型
将“概念数据模型”的相关设计转换为“物理数据模型”(PhysicalDataModel),相当于从“概要设计”转换为“详细设计”,即对表和关系的具体实现。
选择“Tools”-->“GeneratePhysicalDataModel...”即可。
然后选择SQLServer2005数据库管理软件:
点击“确定”按钮以后,就产生了对应“SQLServer2005”数据库的表、属性、关系的具体实现。
如图:
三、在物理数据模型中添加约束
1、查看或设置属性(字段)的相关约束
选择“columns”选项卡:
选择相关字段列,打开“属性”对话框:
可在“StandardChecks”和“AdditionalChecks”查看或添加约束。
·“StandardChecks”选项卡:
在这个选项卡可以定义属性的标准检查约束,窗口中每项的参数的含义,如下:
参数
说明
Minimum
属性可接受的最小数
Maximum
属性可接受的最大数
Default
属性不赋值时,系统提供的默认值
Unit
单位,如公里、吨、元
Format
属性的数据显示格式
Lowercase
属性的赋值全部变为小写字母
Uppercase
属性的赋值全部变为大写字母
Cannotmodify
该属性一旦赋值不能再修改
ListOfValues
属性赋值列表,除列表中的值,不能有其他的值
Label
属性列表值的标签
·“AdditionalChecks”选项卡:
在此可直接编写SQL语句的CHECK约束。
注意:
若无“AdditionalChecks”选项卡,可点击“More>>”按钮,打开该选项卡。
2、设置“标识列”(自动增长)
3、设置唯一约束
在PD中创建唯一约束的操作,以userinfo表来说,customerID是主键,必然是唯一的,PID如果也必须是唯一的,那么具体操作如下:
在PD的模型设计面板中,双击“userinfo”表,打开属性窗口,切换到“Keys”选项卡,可以看到里面有一行数据PK_customerID,这是主键约束。
添加一行数据,命名为UQ_PID,不能将右边的“P”列选上,如图:
然后单击工具栏的“属性”按钮,弹出UQ_PID的属性窗口,切换到列“Columns”选项卡,单击增加列按钮,选择将“PID”列添加到其中,然后单击确定即可完成唯一约束的添加。
4、设置“默认值”:
例1:
“cardinfo”表中为“IsReportLoss”(是否挂失)添加默认值“否”,且取值只能为“是”和“否”。
设置如图:
例2:
“cardinfo”表中的“opendate”(开户日期)默认为当天,设置如图:
5、在“AdditionalChecks”选项卡中直接编写SQL语句的CHECK约束。
例1:
为“cardinfo”表中的“cardID”添加约束,设置如图:
例2:
为“userinfo”表中的“PID”添加约束,设置如图:
概念数据模型与物理数据模型中的一些细节区别:
1>在概念模型中,不要添加表的相关约束,应该在物理模型中添加表的相关约束;
2>只有在物理模型中,PowerDesigner才会显示“Database”菜单项。
也只有在“Database”菜单项中才有“DatabaseGeneration”选项(用于生成SQL语句);
四、在SQLServer2008中手动创建数据库
在SQLServer2008中创建数据库“bankDB”。
五、在数据源ODBC中配置用户数据源:
点击“完成”按钮完成用户数据源的配置。
可点击“测试数据源”进行测试。
五、在SQLServer2008中自动创建表结构
首先:
根据“物理数据模型”(PhysicalDataModel)自动建立相应的SQL语句:
其次:
执行其创建的SQL语句文件,将数据表结构自动创建到SQLServer2008数据库中:
注意:
在执行SQL语句文件之前,一定要确定连接上用户数据源。
可通过菜单进行连接:
完成以上步骤后,刷新SQLServer2008数据,将会看到你所创建的相关表结构。
当然,以上两个步骤可以一起完成:
只要在“Database”-->“DatabaseGeneration”中,选择“Directgeneration”即可:
这样,使用PowerDesigner设计SQLServer数据库的基本步骤就全部完成