自从接触到用PowerDesigner作数据库建模后,喜欢它就停不下来了。我发现如今不少2-20人的团队在作数据库结构设计时,仍是会直接在phpmyadmin 或 navicat 里直接建表。这种直接建表的方式一开始看似节约时间,但当表多了,频繁变动表结构,须要讲表逻辑时,就不比用建模的方式方便直观。php
直接建表的方式还会很容易致使,不一样的程序员实现不一样功能时,本身建本身的表,致使数据库表结构混乱,没有一我的是所有知道这些表的清晰逻辑。程序员
使用PowerDesigner来作数据库建模,通常都是由一个专门的人来建表维护,开发过程当中若是遇到需求改动表结构,也是交给专门维护的人去改动,这样就有一个能把控全局的人了。sql
逻辑结构模型-实体数据库
逻辑结构模型-实体的属性编程
为了方便导出同步物理表结构,我作数据库建模时都不作实体之间的外键约束关系,直接在实体里添加对应同名的字段,加上注释。若是在实体之间都作上实体的关联关系,一是实体多了,关联关系线也多了,看起来总感受眼花缭乱。二是导出的 sql 脚本同步到物理数据库里,很容易由于外键的约束关系和原来的数据表数据有不完整性,致使同步报错。工具
PowerDesigner是一个很是强大的建模工具,除了作数据建建模,还能作需求分析、UML建模。因为我本身对UML建模这块的知识缺少,一直都想提高本身,老是没找到提高的理由(或许我不想写代码的时候,有手下人写,我会提高到UML建模的方式),呵呵。学习
这里我说说个人一个观点,让你们批评指正一下。我总感受数据库建模,UML建模,这类开发方式在 Java 和 .net 团队应用的比较多。PHP 团队不多用,都是直接上来就撸码了。.net
用PowerDesigner作数据库建模,已经成为个人习惯,就算本身一我的作项目,数据建模是个人必备开发流程。我曾经由于人家公司的开发组里没有人用数据库建模,谁写代码,谁建表而默默选择离职,如今回想起来,以为本身那时真是年轻不懂事。设计
文采很差,请见谅。欢迎拍砖,批评,交流心得。blog
OA演示地址:http://oa.bodujie.com
若有疑问,欢迎加入QQ群:591528130(AI编程的立胜群) ,一块儿讨论交流学习。
原创做者:AI编程的立胜,QQ:282130106 。
若有转载,敬请注明原创做者与出处,谢谢。