powerdesinger pdm 完成数据库的迁移

通过pdm完成数据库的迁移
oracle 到db2的迁移过程
导出已有oracle数据库的pdm
选择powerdesinger的菜单栏Database-change current DBMS
 弹出对话框 在 NEW DBMS 中选择 IBM DB2 UDB 8.X common server
你可以根据自己的数据库的类型做出对应选择
此时数据库中表的字段的转换都是powerdesinger自己初始定义好的字段
譬如 oracle中字段为varchar2(10) 会转换成db2中varchar(10)
ORACLE 中Date会转换成DB2中的Date
如果此时想自定义数据类型 譬如我想把
Oracle中Date类型转换成DB2中Timestamp类型
那么我们可以改变powerdesinger中 DB2的配置文件
打开powerdesinger的安装目录找到Resource files然后进入DBMS
我现在db2的类型是8.X COMMON SERVER 所以选择对应的文件db2mvs8.xdb
用ultraedit打开
找到<a:MapTargetItem.Value>&lt;UNDEF&gt;=&lt;Undefined&gt;
然后可以看到下面对应的都是powerdesinger默认的数据类型
<a:MapTargetItem.Value>&lt;UNDEF&gt;=&lt;Undefined&gt;
A%n=CHAR(%n)
VA%n=VARCHAR(%n)
LA=VARCHAR
LA%n=VARCHAR(%n)
LVA=VARCHAR
LVA%n=VARCHAR(%n)
BT=SMALLINT
BT%n=NUMERIC(3, 0)
SI=SMALLINT
I=INTEGER
LI=INTEGER
N=DEC
N%n=DEC(%n)
N%s,%p=DEC(%s, %p)
DC=DEC
DC%n=DEC(%n)
DC%s,%p=DEC(%s, %p)
SF=REAL
F=FLOAT
F%n=FLOAT(%n)
LF=DOUBLE PRECISION
MN=DEC(8, 2)
MN%n=DEC(%n)
MN%s,%p=DEC(%s, %p)
D=DATE
T=TIME
DT=DATE
TS=TIMESTAMP
BL=SMALLINT
NO=DEC(6)
NO%n=DEC(%n)
BIN%n=BLOB(%n)
LBIN=BLOB
LBIN%n=BLOB(%n)
TXT=CLOB
TXT%n=CLOB(%n)
MBT=CHAR
MBT%n=CHAR(%n)
VMBT=VARCHAR(255)
VMBT%n=VARCHAR(%n)
PIC=GRAPHIC
PIC%n=GRAPHIC(%n)
BMP=DBCLOB
BMP%n=DBCLOB(%n)
OLE=BLOB
OLE%n=BLOB(%n)
*=CHAR(10)
XMLCLOB=DB2XML.XMLCLOB
XMLVARCHAR=DB2XML.XMLVARCHAR
XMLFILE=DB2XML.XMLFILE</a:MapTargetItem.Value>
<a:List>&lt;UNDEF&gt;
要把oracle中的Date转换成DB2的timestamp只要把D=DATE,DT=DATE
改为D=TIMESTAMP,DT=TIMESTAMP即可,其他字段的转换同理
然后可以把PDM 生成到数据库中
:)希望对你有所帮助
当然实现像DB2数据库的迁移IBM 的 MTK 是个不错的选择呵呵.
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页