PDM文件导入不同数据库的过程基本相同,这里以Oracle数据库为例,详解导入的具体步骤。所使用的导入软件PowerDesigner版本为16.5。
这里选择系统数据源。
参数说明
参数项 | 说明 |
Data Source Name |
为数据源命名 |
Description |
添加描述,可不填写 |
TNS Service Name |
TNS服务名。若没有配置,可直接填写" |
User ID |
用户名 |
填写密码,开始测试
Directory:生成脚本存放目录
File name:生成脚本名
Generation type:有两种生成方式,这里选择第二种。
Script generation:只生成脚本文件
Direct generation:直接生成到数据库
One file only:只生成一个脚本文件,所有的执行命令都在此文件中。如果不勾选,则会生成一个主脚本和多个建表脚本。
Edit generation script:入库之前,会生成脚本文件,可对脚本作更改。
Check model:检查模型(可不勾选,检查有时会报错)
Automatic archive:生成sql同时生成apm(一般不选择)
如果只需导出脚本,则在此处选择"Script generation"即可,后续可通过脚本文件,将数据导入数据库。
点击上图"Direct generation"最右侧连接数据库按钮,添加配置好的数据源。
可在此修改或重新配置。
PowerDesigner设置了很多选项,以满足细致的、个性化的导入需求。可参考以下参数配置,定制合适的导入规则。
点击"Opentions"选项卡,可选择需要导入的对象等。
注意,用户名一般由DBA创建,不需在此创建用户,所以User不要勾选;如果数据库中不存在要导入的表,则drop table 也不勾选,否则脚本中会生成drop语句,执行时会报错。Database、Group也不需要。
点击"Format"选项卡,这里可以选择编码形式等,一般不需修改。
选择"Selection"标签,在这里我们可以选择要导入的PDM以及其中的表。
如果由多个PDM,可在此选择需要导出的PDM。
Powerdesigner默认只导出PDM根目录下面的table数据,如果数据存放在Package中,直接导出不会成功,需在此选择需要导出的表。
选择"Summary",可查看自定义的规则。
选择"Preview"标签,可以预览脚本内容。
以上导入规则配置完成后,弹出执行脚本对话框。在这里可以对sql进行编辑修改,若不需要修改则直接运行,开始导入数据库。
如果PDM是从其他库中导出的,则在sql语句中,可能涉及到指定具体的表空间等,如果目标数据库中不存在相同的表空间,则执行会报错。这时需要将表空间名称改为目标库中的名称。
原因是之前步骤没有取消勾选"drop table",脚本中生成了drop语句,实际上数据库中并不存在相关表和约束条件,故而报错。这里忽略继续执行即可。
至此,完成PDM导入Oracle数据库的过程。