代码改变世界

Powerdesigner与数据库同步(比较新旧数据库的架构)

2013-02-27 22:58  Mike.Jiang  阅读(7574)  评论(3编辑  收藏  举报

1概述

在使用PowerDesigner进行数据库设计、生成数据库,并开发进行一段时间后, 在这段时间内,数据库的结构必然会有一些变化。我们往往会遇到这样的问题,PowerDesigner与现有数据库结构不匹配。如果人工的比较,即费时又会出错。

2 PowerDesigner 生成数据库

由于人工比较的缺陷,我们需要一个工具来解决。首先,因为PowerDesigner文件与数据库文件是完全不同的两种文件格式,所以我们先要将它们转换成同样的数据结构。我们用PowerDesigner的物理模型生成一个新的数据库。以生成SQL SERVER 为例:

2.1 “Database”->”Generate Database”

此时数据库设计为Employee表(原始数据库结构):

2.2 然后,在输出目录你会看到SQL脚本文件,新建一个数据库,并执行脚本。

2.3 现在我们改变一些设计,表结构如下(新数据库结构):

将EmpName的数据类型改为nvarchar(100), 添加DeptID列。

3 数据库架构比较工具

在网上找到了一些工具,但最后选择了Visual Studio(我的版本是2010)自带的工具。步骤如下:

3.1 新建架构比较:“数据“->”架构比较“->”新建架构比较“

3.2 选择源架构和目标架构

并确认

3.3 找出不同项,并修改

自带的更新脚本,感觉不是很好,所以我是手工修改的(因为很少有不同的,关键是找出哪些地方不同)。如果你还有什么其它的架构比较工具请拿出来分享啊。