工具:

Sybase PowerDesigner 12.5

Microsoft  SQL Server 2005

第一步:概念数据模型

打开PowerDesigner 软件,设计“概念数据模型”(Conceptual Data Model),它通常用在概要设计阶段。

设计表结构

注意:如果Palette(工具面板)没有显示,可以在工具栏 --> 右键 --> 选择“Palette”(打勾选中)

设计结果如下:

在设计属性(字段)的时候,三个字母(M、P、D)分别表示:

M:是否为空;(√表示不允许为空)

P:是否为主键;

D:是否在该软件的视图中显示;

添加 “Relationship” 关系时,请注意:

1、在所有实体对象中,属性的取名不能重复。

2、 当添加引用完整性时,外键表不必添加主键表的主键字段作为外键。因为,在添加“Relationship”关系 之后,再转换为物理模型以后,外键表将自动添加外键字段列。

3、在添加 “Relationship” 关系时,起始点实体默认为主键表,结束点实体默认为外键表。当然,可以在 “Relationship” 中改变。

第二步:物理数据模型

将“概念数据模型”的相关设计转换为“物理数据模型”(Physical Data Model),相当于从“概要设计”转换为“详细设 计”,即对表和关系的具体实现。

选择“Tools”-->“Generate Physical Data Model . . .”即可。

然后选择 SQL Server 2005 数据库管理软件:

点击“确定”按钮以后,就产生了对 应“SQL Server 2005”数据库的表、属性、关系的具体实现。

在PowerDesigner 中添加约束

1> 查看或设置属性(字段)的相关约束

2> 设置“标识列”(自动增长)

3> 设置“默认值

4> 设置“Check 约束” 

5> 设置唯一索引

概念数据模型与物理数据模型中的一些细节区别:

1> 在概念模型中,不要添加表的相关约束,应该在物理模型中添加表的相关约束;

2> 只有在物理模型中,PowerDesigner 才会显示“Database”菜单项。也只有在“Database” 菜单项中才有“Database Generation”选项(用于生成SQL 语句);

第三步:在SQL Server 2005中手动创建数据库

比如:我在SQL Server 2005中手动创建数据库“Students”示例。

第四步:在数据源ODBC中配置用户数据源

比如:我在用户数据源中,添加数据库“Students”的数据源。

第五步:在SQL Server 2005中自动创建表结构

首先:根据“物理数据模型”(Physical Data Model)自动建立相应的SQL语句:

其次:执行其创建的SQL语句文件,将数据表结构自动创建到SQL Server 2005 数据库中:

完成以上步骤后,刷新SQL Server 2005数据,将会看到你所创建的相关表结构。

当然,以上两个步骤可以一起完成:

只要在“Database”-->“Database Generation”中,选择“Direct generation”即可:

这样,使用PowerDesigner 设计SQL Server 数据库的基本步骤就全部完成!

使用PowerDesigner 设计SQL Server 数据库的更多相关文章

  1. 利用PowerDesigner绘制PDM生成SQL Server数据库

    PowerDesigner是个很强大的建模工具,可以利用它绘制各种图形,本文利用该工具绘制PDM,进而生成SQL Server数据库. 比如绘制一个简单的学生选课.教师授课管理系统的PDM: pk表示 ...

  2. 【学习记录】第一章 数据库设计-《SQL Server数据库设计和开发基础篇视频课程》

    一.课程笔记 1.1  软件开发周期 (1)需求分析阶段 分析客户的业务和数据处理需求. (2)概要设计阶段 设计数据库的E-R模型图,确认需求信息的正确和完整. /* E-R图:实体-关系图(Ent ...

  3. Powerdesigner逆向工程从sql server数据库生成pdm【转】

    Powerdesigner逆向工程从sql server数据库生成pdm 第一步:打开"控制面板"中的"管理工具" 第二步:点击"管理工具" ...

  4. SQL Server 数据库设计、命名、编码规范

    https://blog.csdn.net/songguozhi/article/details/5858159 SQL Server 数据库设计.命名.编码规范

  5. 从SQL Server数据库转到Oracle数据库的数据脚本处理

    在我们很多情况下的开发,为了方便或者通用性的考虑,都首先考虑SQL Server数据库进行开发,但有时候客户的生产环境是Oracle或者其他数据库,那么我们就需要把对应的数据结构和数据脚本转换为对应的 ...

  6. Sql Server数据库备份和恢复:原理篇

    本文与您探讨为什么Sql Server有完整备份.差异备份和事务日志备份三种备份方式,以及为什么数据库又有简单模式.完整模式和大容量日志模式这三种恢复模式.本文内容适用于2005以上所有版本的Sql ...

  7. 使用PowerDesigner设计建造MySQL数据库

    使用PowerDesigner设计建造MySQL数据库 一.使用PowerDesigner制作建库脚本 1.设计CDM(Conceptual Data Model) 2.选择 Tools -> ...

  8. 关于SQL SERVER数据库学习总结

    对于SQL SERFVER数据库也学了有一阵子了,自己也对自己所学做了一些总结. 我们首先学习数据库设计的一些知识点和用SQL语句建库. 设计数据库步骤:需求分析阶段,概要设计阶段,详细设计阶段, 建 ...

  9. SQL Server数据库性能优化之索引篇【转】

    http://www.blogjava.net/allen-zhe/archive/2010/07/23/326966.html 性能优化之索引篇 近期项目需要, 做了一段时间的SQL Server性 ...

随机推荐

  1. Android listview的item设定高度

    在item的layout文件中,用android:layout_height设置item的高度.运行,高度设置无效. 解决办法: 给item设定minHeight,即可. -------------- ...

  2. Android Handler与多线程

    本文首先解释一下handler是用来干嘛的,然后通过例子介绍其在多线程中的应用. 什么是Handler handler通俗一点讲就是用来在各个进程之间发送数据的处理对象.在任何进程中,只要获得了另一个 ...

  3. Java API —— 泛型

    1.泛型概述及使用 JDK1.5以后出现的机制 泛型是一种特殊的类型,它把指定类型的工作推迟到客户端代码声明并实例化类或方法的时候进行.也被称为参数化类型,可以把类型当作参数一样传递过来,在传递过来之 ...

  4. android logcat里面AndroidRuntime FATAL EXCEPTION: main这个是什么问题啊。

    android logcat里面AndroidRuntime FATAL EXCEPTION: main这个是什么问题啊. http://zhidao.baidu.com/link?url=mUI11 ...

  5. 配置centos 7 mysql

    http://www.cnblogs.com/starof/p/4680083.html 一.系统环境 yum update升级以后的系统版本为 [root@yl-web yl]# cat /etc/ ...

  6. 转:表单中Readonly和Disabled的区别(HTML中使用javascript解除禁止input输入框代)

    转:表单中Readonly和Disabled的区别 参考资料: disabled和readonly区别: 参考博文1地址:http://blog.csdn.net/symgdwyh/article/d ...

  7. JAVA操作数据库插入中文表中显示乱码的解决方法

    String dbUrl = "jdbc:mysql://localhost:3306/BookDB?useUnicode=true&characterEncoding=GB2312 ...

  8. POJ 3233 矩阵乘法

    题意:求解A+A^2+...+A^k 题解: 1)利用通和公式,原式=(A^k+1 - A)(A - O)^-1 时间复杂度O(n^3lgk) 2)递归求解,A+A^2+...+A^k=(A+A^2+ ...

  9. HDU 1213 How Many Tables (并查集,常规)

    并查集基本知识看:http://blog.csdn.net/dellaserss/article/details/7724401 题意:假设一张桌子可坐无限多人,小明准备邀请一些朋友来,所有有关系的朋 ...

  10. 多线程程序设计学习(3)immutable pattern模式

    Immutable pattern[坚不可摧模式] 一:immutable pattern的参与者--->immutable(不变的)参与者        1.1:immutable参与者是一个 ...