PowerDesigner数据库建模

来源:互联网 发布:seo搜索引擎优化 遵义 编辑:程序博客网 时间:2024/05/19 07:09

  PowerDesigner不仅能自如的绘制UML模型图,更重要的是可以进行物理数据模型的设计,通俗的讲就是数据库的设计。

  物理数据模型(Physical Data Model)简称PDM,提供了系统初始设计所需要的基础元素,以及相关元素之间的关系;数据库的物理设计阶段必须在此基础上进行详细的后台设计,包括数据库的存储过程、操作、触发、视图和索引表等。

  PowerDesigner能够用于创建多种不同类型的DBMS(数据库管理系统),每种类型的DBMS都包含一个标准定义的文件用于在PD和DBMS中确定彼此的关联而提供一套接口;创建不同的DBMS可以生成不同的数据库脚本;日常开发中,一般用PDM图生成.sql脚本,然后通过查询分析器(或其它数据库可视化管理软件)生成数据库表以及视图。

  接下来,概要的了解PDM的主要功能:

  首先,它可以将数据库的物理设计结果从一种数据库移植到另一种数据库;其次,它可以通过反向工程将已经存在的数据库物理结构重新生成物理模型或概念模型;此外,还可以定制生成标准的模型报告;当然,它也可以转换为OOM;主要的,它能完成多种数据库的详细物理设计(涵盖常用的各种数据库的DBMS),并生成数据库对象的.sql脚本。

  一般来说,创建PDM有如下三种方式:

  直接创建新的PDM;

  使用模板创建新的PDM;

  通过现有基础创建新的PDM。

  打开PowerDesigner,新建,即创建新的PDM(DBMS使用为Mysql)。

  

  设置一下适应个人的PDM显示参数。

  

  

  设置PDM的模型属性(一般在发布资源或者提交数据库设计的时候需要设置)。

  

  

  然后设置PDM模型选项。

  

  基本设置完后,创建一张数据库表。

  

  表列以及其设置可以参考下图:

  

  表的详情设置:

  

  标准检查约束:

  

  完成了一个表的设计:

  

  如果要设计多个有关系的表,则要创建参照完整性(参照是父表和子表间的连接,定义了两个表中对应列间的参照完整性约束,外键联系主键,两者之间建立参照),参照完整性简单说来就是表与表之前的关系。

  根据参照连接的对应性质的差别,可将连接分成键连接和用户指定的列连接:

  键连接把父表中的主键或候选键连接到子表中的外键上;

  用户指定的列连接把父表中的一个或多个列连接到子表中相应的列上(非常少用)。

  

  在一张PDM中,表与表都不是孤立的,所以需要设置两个表之间的关系(设置两个表之间的参照)。

  

  详细的设置,连接主键、候选键和外键(或者在用户指定的列之间建立连接)。

  

  再之后定义参照完整性。

  

  进行域设置(有助于识别信息的类型,使得不同表中列的山上特性标准化,通过域可以将数据类型、检查规则、强制性等信息关联到域上)。

  

  

  重建表中的键。

  

  

  额外的,我们了解下,索引的创建|索引的作用:

  提供查询表的多种存储途径;

  提升查询速度。

  可以为列建立索引,也可以为键建立对应的索引:

  

  选择列:

  

  索引和视图很多时候都不是必需的,所以创建的时候需要按项目需求设计。紧跟着,创建视图(建立在一个或多个基本表或其它视图之上的虚拟表,实质上也是一个sql的查询语句),创建视图和创建索引类似,也不是常用的,仅在表结构复杂的时候,视图可以方便的提供快捷操作。

  

  在SQL Query页面,定义视图的SQL语句:

  Union合并两个或多个Select语句,数据不重复;

  Union All合并两个或多个Select语句,数据可重复;

  Intersect合并两个或多个Select语句,数据显示交集;

  Minus合并两个或多个Select语句,数据显示补集。

  

  单击Query栏右边Edit编辑SQL。

  

  完成实例。

  

  到了现在,我们需要将图模型转化生成.sql脚本,脚本是我们设计生产数据库的基石。通过选择菜单上的Database然后如下图操作,用以生成.sql脚本。

  

  

  SQL的脚本在确定后存放在桌面,打开后就能看到由图模型转换成mysql数据库使用的sql语言的语句文档,通过这些语句,运行在mysql控制台就能生成数据库表单。

  

  通过两期PowerDesigner的介绍,我们基本上能使用工具,以模型化的思维,做好快速的设计,与此同时,还提高了产品的开发效率和质量。

1 0