工具:

Sybase PowerDesigner 15.1

Microsoft SQL Server 2005

第一步概要设计:

打开PowerDesigner软件,设计“概念数据模型”(Conceptual Data Model):

点击workspace 右键---》New—>Conceptual Data Model,

弹出如下界面:

设计表、表结构:

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

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

P:是否为主键;

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

第二步:物理设计

将“概念数据模型”设计的表转换为“物理数据模型”(Physical Data Model),实际上是从“概要设计”转换为“详细设计”,即对表的具体实现。

将概要设计模板转换为物理设计

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

然后选择你的DBMS.

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

这时就会有一个物理设计的模板出现,将你在概要设计时的实体都转换成具体的表。

第三步:在SQL Server 2005中手动创建数据库(也可以用SQL创建库,pd可以将我们的表设计都转换成SQL)

需手动在SQL SERVER 2005中创建您的数据!如:“Students“,此过程省略…

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

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

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

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

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

另外生成单张表SQL语句可以:

在物理设计模板中,选择表--》右键—》SQL Perview…

生成SQL创建库和表,我们可以看出生成的sql语句很不错的。

建立表的主外键关系:

使用PowerDesigner物理模型为建的关系表添加外键,有个原则就是主表的主键名称必须和副表的外键名称一致。

测试(仅测试,不含技术)

1.建主表user                                                   2.建副表department

uid int primary key                                 did int primary key

name varchar(32)                                 uid int

2.对着模型右击New->Reference

parent表为user表,child表为department

这样就建立了关系,外建也自动建立了。

关于表关系的建立,本人也存疑,但有三种思路:

1、概要设计时设计好关系。(个人倾向于这种方式,有时间尝试)

2、物理设计时设计好关系(笔者使用此方法,若表很多,关系复杂,此阶段设计关系会很痛苦。偶深受其害!)

3、生成数据库后,DBMS中建立关系(这种方式是笔者突发奇想,仔细思考,不建议采用这种方式,如果使用T-SQL重构数据库,又得重建关系)

仔细思考过后,个人认为概要设计时,设计实体、实体必要属性、实体与实体关系,然后在数据库物理设计时详细设计表属性等内容。

SyBase Powerdesigner生成数据库详细表的更多相关文章

  1. PowerDesigner生成数据库表和逆向生成表结构(MySQL数据库)

    一.Download Connector/ODBC下载ODBC驱动,地址:https://dev.mysql.com/downloads/connector/odbc/, 需要注意:PowerDesi ...

  2. powerdesigner 生成数据库脚本

    PowerDesigner导出所有SQL脚本 操作:Database=>Generate Database PowerDesigner怎么导出建表sql脚本 1 按照数据库类型,切换数据库. D ...

  3. 用PowerDesigner生成自定义建表语句

    原文:用PowerDesigner生成自定义建表语句 我们经常用PowerDesigner来进行数据库表结构的设计,并且设计出来的表比较直观的看出之间的相互关系,方便理解:但其自动生成的脚本并不一定符 ...

  4. SQL Server 动态生成数据库所有表Insert语句

    一. 背景 SQL Server,如果我们需要把数据库A的所有表数据到数据库B中,通常我们会怎么做呢?我会使用SSMS的导入导出功能,进行表数据的导入导出,无可厚非,这样的导入非常简单和方便: 但是, ...

  5. PowerDesigner生成MySQL脚本,表和字段进行转义

    打开Power Designer数据库建模工具,软件基本信息如下 如果PowerDesigner内置的(table_option)表物理操作没有,请看以下步骤 打开 Edit Current DBMS ...

  6. c# EF code First生成数据库以及表

    1. 安装Entity Framework 使用NuGet安装Entity Framework程序包:工具->库程序包管理器->程序包管理器控制台,执行以下语句: PM> Insta ...

  7. PowerDesigner 生成数据库字典(有图有真相,绝对自创非转载)

    最近用pd做模型,生成数据字典时在网上找了很多,但是看的都很晕,说的不明白. 经过自己研究终于找到一个简单的方式,当然这只是简单的,大家举一反三去吧.辛苦弄的,求点赞!!! 先看效果图: 现在说一下步 ...

  8. spring和hibernate整合时设置自动生成数据库的表

    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFa ...

  9. oracle实现远程连接超简单;枚举与剪枝();PowerDesigner生成数据库代码注意里面的双引號,应该去掉

    点击開始,查看netManager,点击面板的监听程序,默认仅仅有地址1且标记着localhost.新建一个地址,输入本机IP,又一次开启监听程序就可以 △△△ * △△ = △△△△ 某3位数乘以2 ...

随机推荐

  1. java中的显示初始化和特定初始化

    public class Test{ public static void main(String[] args){ Child child = new Child(); } } class Pare ...

  2. 邻接表有向图(二)之 C++详解

    本章是通过C++实现邻接表有向图. 目录 1. 邻接表有向图的介绍 2. 邻接表有向图的代码说明 3. 邻接表有向图的完整源码 转载请注明出处:http://www.cnblogs.com/skywa ...

  3. jQuery 插件简单模板

    /*! * Copyright yunos.com All rights reserved. * jquery.scrollspy.js * @author v10258@qq.com * @vers ...

  4. installshield生成时提示6003错误的一种可能

    因为项目需要,2014年写过的一个老项目需要重新打包.开发电脑换了,原来开发的系统是win7,现在已经升到了win10.而且原来使用installshield limited 2013开发的打包项目已 ...

  5. Glyphish – 精心打造的 iPhone & iPad 应用程序图标

    Glyphish 是一套精心打造的图标库,包含 iOS 工具栏.标签栏.导航条等等,Glyphish 图标也完美的用在 Android.Windows Mobile App 和移动网站的 UI 设计等 ...

  6. C# 根据自定义线程定时器 生成随机订单

    这个源之于一个朋友问我的一个问题,他说他们的需求是在一天之内随机抽取数据生成订单,还不能让客户看出来. 随机生成的订单还分概率抽取不一定的状态值,那么根据我之前写的定时器线程执行器,我们设计需要一个定 ...

  7. 基于HT for Web矢量实现HTML5文件上传进度条

    在HTML中,在文件上传的过程中,很多情况都是没有任何的提示,这在体验上很不好,用户都不知道到时有没有在上传.上传成功了没有,所以今天给大家介绍的内容是通过HT for Web矢量来实现HTML5文件 ...

  8. 一图看懂host_only nat bridge拓扑结构

    VMware三种模式 我们在使用VMware时经常能看到三种网络的连接模式:Bridged  Host-Only Nat,它们都有什么作用,网络拓扑是怎样的?怎样才能让他们上网,他们相互间能不能相互访 ...

  9. 【转载】8天学通MongoDB——第四天 索引操作

    这些天项目改版,时间比较紧,博客也就没跟得上,还望大家见谅. 好,今天分享下mongodb中关于索引的基本操作,我们日常做开发都避免不了要对程序进行性能优化,而程序的操作无非就是CURD,通常我们 又 ...

  10. Clr静态数据Table-Valued函数

    前两天Insus.NET实现一个功能<在数据库中提供只读数据>http://www.cnblogs.com/insus/p/4384411.html ,在数据库中为程序提供静态数据.它是在 ...