数据库的设计主要有以下几个步骤:

1:需求分析:根据业务需求分析出满足客户的需求,从而建立相应的数据库

2:概念设计:通过数据抽象,设计系统概念模型,一般为E-R模型;(entity-relationship

3:逻辑结构设计:设计系统的模式和外模式,对于关系模型主要是基本表和视图;

4:物理结构设计:设计数据的存储结构和存取方法,如索引的设计;

5:生成数据库的脚本

以下是记录用powerDesinger完成这个过程的:(以 教师(Teacher) 和 学生(student)多对多的关系来创建模型和数据库)

1:需求分析就省略了;

2:概念模型设计:

在powerDesigner中创建创建一个工程目录作为你项目的目录

在该项目创建概念模型:自定义你要的概念模型名称(一般为student(CDM))CDM以区分后面要生成的ldm 和pdm

新建好概念模型后在概念模型上创建实体:使用toolbox下的创建实体的按钮;如果没有toolbox  16.5的版本在view 下可以调出

创建实体之间的关系:这里是多对多的关系;1:选中关系按钮 2:将两个有关系的实体连起来,然后双击关系的那根线,在下表中自定义两个实体的关系

在这一步中生成模型有可能会报错:属性的名称唯一,这时需要设置powerDesigner的默认设置:如下图设置即可

3:生成号概念模型后,接下来就是生成逻辑模型;这一不没什么可说的,有可能的报错就是上一步同样的报错,检查是否更改了默认的设置

4:生成物理模型(PDM):选择相应的数据库(我这里是mysql)(首次生成都选择generate),保存pdm文件

5:通过pdm文件来生成创建数据和建表脚本

完成pdm后,同一通过pdm文件生成建库和建表的脚本,通过database按钮生成。整个pdm建摸和建表已经完成了;

powerDesiner设计数据库的一些用法的更多相关文章

  1. 设计数据库字段或者java中使用boolean型时需谨慎

    boolean型变量只有两个值 false和true,我们在设计数据库字段时或者定义java变量时会使用boolean,通常情况下开关类的变量使用无可非议,但请一定要考虑到扩展性. 使用前请仔细考虑一 ...

  2. [转]oracle设计数据库应选择正确的数据类型

    原文地址:http://blog.sina.com.cn/s/blog_5014663501007n40.html 在设计数据库的时候,选择正确的数据类型,往往可以避免很多的问题,正确理解数据库的类型 ...

  3. EA强大的画图工具---设计数据库表格

    http://blog.csdn.net/senior_lee/article/details/30272169?utm_source=tuicool 关于EA这个优秀的软件是从师哥哪里听来的,自己瞎 ...

  4. EA强大的绘图工具---设计数据库表格

    关于EA这个优秀的软件是从师哥哪里听来的,自己瞎点了点,感觉也没什么.近期和和智福加上一个师哥合作敲机房收费系统时,想到之前听人说EA非常强大,便随便找了找关于EA使用的帮助手冊.果然惊喜-- 如题, ...

  5. 采用PowerDesigner 设计数据库

    PowerDesigner设计数据库的教程网上都有,最好的是我一位同学写的,地址: 点击这里 我的大致流程如下: 首先要以管理员的身份打开PowerDesigner,如果没这么做,将导致后面无法创建S ...

  6. EF5+MVC4系列(1) Podwerdesigner15.1设计数据库;PD中间表和EF实体模型设计器生成中间表的区别;EF5.0 表关系插入数据(一对多,多对多)

    在上一篇文章中, http://www.cnblogs.com/joeylee/p/3790980.html  我们用 PD15.1 来设计了数据库,并且生成 了sql数据库,现在我们用 vs2013 ...

  7. SQL数据库Replace的用法

    关于数据库Replace的用法:Replace("字符串","要被替代的字符串","替代后的字符串")尝试过写法效果如下->修改前 效 ...

  8. MySQL索引及优化(3)设计数据库

    一.范式和反范式 优秀的库表设计是高性能数据库的基础.如何才能设计出高性能的库表结构呢?这里必须要提到数据库范式.范式是基础规范,反范式是针对性设计. 1.1.范式 范式是设计数据库结构过程中所要遵循 ...

  9. 使用PD(Power Designer)设计数据库,并且生成可执行的SQL文件创建数据库(本文以SQL Server Management Studio软件执行为例)

    下载和安装PD: 分享我的软件资源,里面包含了对PD汉化包(链接出问题时可以留言,汉化包只能对软件里面部分菜单栏汉化) 链接:https://pan.baidu.com/s/1lNt1UGZhtDV8 ...

随机推荐

  1. laravel的函数asset()、url()

    1.asset():用于引入静态文件,如 css/JavaScript/images,文件必须存放在public文件目录下 src="{{ asset('home') }}/images/t ...

  2. makeuque

    http://blog.csdn.net/10km/article/details/49867479

  3. abp 的坑

    多数据库连接问题 viewmodel的验证问题 发布后,一段查找sln查找代码无法适用生产环境问题 多语言问题,默认中文设置与模板配置文件不统一

  4. oracle建存储过程

    进入plsql命令行 [10:42:10 liuyi@localhost]/home/liuyi>sqlplus demo/demo@180.200.3.129/meboss 连接串格式:用户名 ...

  5. scrapy官方安装方法

    安装依赖 sudo apt-get install python-dev python-pip libxml2-dev libxslt1-dev zlib1g-dev libffi-dev libss ...

  6. android 网站上下的 adt 不能显示没有安装的

    问题描述 使用SDK Manager更新时出现问题Failed to fetch URL https://dl-ssl.google.com/android/repository/repository ...

  7. centos6.8下redis的安装和配置

    centos6.8下redis的安装和配置 下载.安装 在redis官网可以获取到最新版本的redis 进入/usr/local/目录,执行如下命令 wget http://download.redi ...

  8. 541. Reverse String II

    static int wing=[]() { std::ios::sync_with_stdio(false); cin.tie(NULL); ; }(); class Solution { publ ...

  9. 文件读取ndarry 等价于DataFrame的操作

    LD=loadDatas() userMat=LD.makeRatingMatWithoutUserID() print(type(userMat)) userRatingMat=pd.DataFra ...

  10. I/O Planning

    同一个BANK的电压必须是一样的,而电气特性则可以不同. 最近GTX调不出来,原来是电平不对 电源的影响 示波器看电源纹波 VCCO是为BANK的IO输出供电.比如LVCMOS33的信号,这个BANK ...