powerdesigner怎么导出sql
发布时间:2025-05-24 01:15:51 发布人:远客网络
一、powerdesigner怎么导出sql
PowerDesigner最初由Xiao-Yun Wang(王晓昀)在SDP Technologies公司开发完成。
PowerDesigner是Sybase的企业建模和设计解决方案,采用模型驱动方法,将业务与IT结合起来,可帮助部署有效的企业体系架构,并为研发生命周期管理提供强大的分析与设计技术。
二、更改当前数据库类型>>Change Current DBMS按钮
三、将当前的DBMS更改成需要的DBMS(如果用的就是当前的mysql5.0就无需更换)
四、选择Database菜单栏下>>Generate Database
五、设置导出.sql名字和路劲,配置如图所示。
六、导出的sql是没有注释的,如果需要注释
Tools>>Excute Commands>> Edit/Run Script打开的窗口中添加以下信息
'******************************************************************************
'* Purpose: Database generation cannot use object names anymore
' It always uses the object codes.
' In case the object codes are not aligned with your
' object names in your model, this script will copy
' the object Name onto the object Comment for
'******************************************************************************
Dim mdl' the current model
' get the current active model
MsgBox"There is no current Model"
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
MsgBox"The current model is not an Physical Data model."
' This routine copy name into comment for each table, each column and each view
Private sub ProcessFolder(folder)
'把表明作为表注释,其实不用这么做
'把列name和comment合并为comment
' go into the sub-packages
二、powerdesigner如何导出sql
我们可以在PowerDesigner软件里面生成SQL语句,那么如果想要把它导出,该怎么办呢,PowerDesigner软件也是可以导出SQL语句的,只需要打开菜单栏里面的数据库,在里面的generatedatabase里面就可以导出。
2、点击上方菜单栏中的“database”,在展开的菜单栏中,点击“generatedatabase”,
3、在跳转的页面中,输入导出路径和文件名,点击“确定”即可导出SQL。
在PowerDesigner软件里面导出SQL语句的方法就是上面小编给大家分享的方法,希望可以帮助到有需要的小伙伴们。
三、如何用Powerdesigner的PDM生成数据库及逆向生成
pdm做好后,最终是要将其转化为数据库实体的。这里pdm想必大家都知道是什么文件,对的,英文是physiyc data model也就是物理数据模型。
1.确认当前Powerdesigner设置的dbms是否正确,即是否是我们要生成的数据库类型,我在这里使用的是sqlserver2000:
Powerdesigner->数据库->更改当前dbms,选择您的数据库类型。
2.配置Powerdesigner与数据源的连接
Powerdesigner->数据库->配置连接->用户dsn(或系统dsn)->选择、添加您的数据源
Powerdesigner->数据库->连接->设置好您刚才建立的dsn确定。
OK,设置好连接后我们就可以将pdm生成sql语句了。
Powerdesigner->数据库->生成数据库->配置好(默认就可以)后选择确定就好了。
拿到sql脚本语句,大家都知道应当如何做了吧,放到sql查询分析器里执行吧。
Powerdesigner逆向工程从现有数据库生成PDM
在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建库脚本,最后将物理数据模型生成关系数据库,现在反过来,通过逆向工程将关系数据库,生成物理数据模型。
在丢失数据模型或者数据库模型同现有的数据库不一致,可以通过该方法生成使用中数据库的模型
还原回的模型中,可能会没有中文注释,没有表外键对应关系(字段还有,索引关系没了)
1,确认要生成模型的数据库是最新的,并且可以使用
1,打开系统ODBC数据源,位置“控制面板--管理工具--数据源(ODBC)
2,选择系统DSN,点击添加按钮,会弹出如下界面,选择与数据库相匹配的驱动程序
3,点击完成,弹出数据源名称(自定),和选择你要连接的数据库,如下图所示
4,选择确定后,该数据源建立成功,可以双击该数据源名称进行连接测试,如下图所示
5,至此数据源建立完成,当然这些也可以不用在这里建立,在powerdesigner里也可以建立,建立方法为
选择Database->configure connections,转到system dsn标签,点击Add按钮,选数据库类型DB2,点击完成。显示如下:输入DataSource Name“PDMTest”;输入ServerName“Database”,配置完成。如下所示:
1,打开Powerdesigner工具,创建一个PDM文件,选择与之匹配的数据库类型“ibm db2 udb 8.x common server”。创建方法为:右键点击左侧面板中的WorkSpace---->new------>physical data nodel,在DBMS中选择你要的数据类型,选择好后点击确定,则新建立了一个工作空间。
2,选择Database菜单下的Reverse Engineer Database,弹出Database Reverse Engineering对话框,选Using an ODBC data source选ODBC数据源“s2ms”,如下图所示:
3,点击确定后,显示此数据库中所有表、视图、用户(这个选择一下该数据库的用户)。根据需要选择后,转换成pdm。图示如下
4,选择好后,点击OK,则生成模型。
如果你不光有个正在使有的数据库,你还有一下建立库的脚本,那你发财了!因为用.sql的脚本生成的模型,就不存在用数据库生成的缺点了,具体操作如下:
二、通过SQL脚本逆向工程生成PDM
1、数据库SQL脚本文件crebas.sql。下为脚本实例:
/*==============================================================*/
/* Database name: PhysicalDataModel_1*/
/* DBMS name: ORACLE Version 9i*/
/* Created on: 2003-07-13 10:49:08*/
/*==============================================================*/
/*==============================================================*/
/*==============================================================*/
constraint PK_CLASS primary key("classID")
/*==============================================================*/
/*==============================================================*/
"studentID" NUMBER(10) not null,
constraint PK_STUDENT primary key("studentID")
add constraint FK_STUDENT_REFERENCE_CLASS foreign key("classID")
2、还是创建一个pdm,选择Database--->Reverse Engineer Database,选择Using files。
3、看到由脚本自动生成相关的PDM如下所示:
四,生成模型后要导出数据库建库脚本
导好的模型,当然是用来修改和导出建库脚本的,操作方法如下
1,选择database--->generate database弹出如下窗口
在用户的none中选择数据库用户,同时可选要导出的表,最后点击确定,如果不能正常生成脚本提示模型错误,则在上图中的options中将check modle的选项去掉,点击确定,生成sql脚本,
这时生成的脚本不要着急去用,因为可能是有问题,用记事本或其它工具打开这个脚本,你会发现在所属名上也就是s2ms上都会加上""号,用Ctrl+H,将所有"替换为空,就大功告成了