将数据库中的表导入到PowerDesigner中并转为excel文档

上传人:xy****7 文档编号:43743766 上传时间:2018-06-07 格式:DOCX 页数:9 大小:206.21KB
返回 下载 相关 举报
将数据库中的表导入到PowerDesigner中并转为excel文档_第1页
第1页 / 共9页
将数据库中的表导入到PowerDesigner中并转为excel文档_第2页
第2页 / 共9页
将数据库中的表导入到PowerDesigner中并转为excel文档_第3页
第3页 / 共9页
将数据库中的表导入到PowerDesigner中并转为excel文档_第4页
第4页 / 共9页
将数据库中的表导入到PowerDesigner中并转为excel文档_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《将数据库中的表导入到PowerDesigner中并转为excel文档》由会员分享,可在线阅读,更多相关《将数据库中的表导入到PowerDesigner中并转为excel文档(9页珍藏版)》请在金锄头文库上搜索。

1、将数据库中的表导入到 PowerDesigner 中并转为 excel 文档1、打开 PowerDesigner12,在菜单中按照如下方式进行操作file-Reverse Engineer-DataBase 点击后,弹出 New Physical Data Model 的对话框2、在 General 选项卡中Model name:模板名字,自己命名。DMBMS :根据需要选择,我选择的是 ORACLE Version 10g 点确定后弹出 Database Reverse Engineering Option 对话框3 Selection 选项卡中,选中 Using a data source

2、 选项注意如果是第一次导入数据,需要你先自己配制 ODBC 数据源,方法如下: 1)点击 下面 右侧的数据库 连接按钮,弹出 Connect to a Data Source 的 对话框2)选中 ODBC machine data source 选项,点击 Modify 按钮右边的 Configure 按钮 弹出 Configure Data Connections3)在 ODBC Machine Data Sources 选项卡 下面的工具栏中点击 第二个 数 据库 配置按钮(Add Data Source(Ctrl+N) 弹出创建新数据源窗口 ,选择文 件数据源, 选择相应的数据源驱动程序

3、(我选 Oracle) ,点下一步 (Modify) ,给数据源起个名字,选择服务器,下一步,输入相应的密码 配置完毕 后 点击确定4,选择刚刚配置的数据源,输入相应的用户名和密码 即可。 、选择需要导入的表powerDesigner 生成生成 excel 版本的数据库文件版本的数据库文件在 PowerDesigner 中,shift+ctrl+X,打开脚本运行,脚本如下: * * File: pdm2excel.txt* Title: pdm export to excel* Purpose: To export the tables and columns to Excel* Model:

4、 Physical Data Model* Objects: Table, Column, View* Author: ziyan* Created: 2012-05-03* Version: 1.0* *Option ExplicitDim rowsNumrowsNum = 0- - Main function- - Get the current active modelDim ModelSet Model = ActiveModelIf (Model Is Nothing) Or (Not Model.IsKindOf(PdPDM.cls_Model) ThenMsgBox “The c

5、urrent model is not an PDM model.“Else Get the tables collection创建 EXCEL APPdim beginrowDIM EXCEL, SHEETset EXCEL = CREATEOBJECT(“Excel.Application“)EXCEL.workbooks.add(-4167)添加工作表EXCEL.workbooks(1).sheets(1).name =“test“set sheet = EXCEL.workbooks(1).sheets(“test“)ShowProperties Model, SHEETEXCEL.v

6、isible = true设置列宽和自动换行sheet.Columns(1).ColumnWidth = 20 sheet.Columns(2).ColumnWidth = 40 sheet.Columns(4).ColumnWidth = 20 sheet.Columns(5).ColumnWidth = 20 sheet.Columns(6).ColumnWidth = 15 sheet.Columns(7).ColumnWidth = 10 sheet.Columns(8).ColumnWidth = 10 sheet.Columns(9).ColumnWidth = 10sheet.C

7、olumns(1).WrapText =truesheet.Columns(2).WrapText =truesheet.Columns(4).WrapText =trueEnd If- - Show properties of tables- -Sub ShowProperties(mdl, sheet) Show tables of the current model/packagerowsNum=0beginrow = rowsNum+1 For each tableoutput “begin“Dim tabFor Each tab In mdl.tablesShowTable tab,

8、sheetNextif mdl.tables.count 0 thensheet.Range(“A“ & beginrow + 1 & “:A“ & rowsNum).Rows.Groupend ifoutput “end“End Sub- - Show table properties- -Sub ShowTable(tab, sheet)If IsObject(tab) ThenDim rangFlagrowsNum = rowsNum + 1 Show propertiesOutput “=“sheet.cells(rowsNum, 1) = “实体名“sheet.cells(rowsN

9、um, 2) =tab.namesheet.cells(rowsNum, 3) = “sheet.cells(rowsNum, 4) = “表名“sheet.cells(rowsNum, 5) = tab.codesheet.Range(sheet.cells(rowsNum, 5),sheet.cells(rowsNum, 9).MergerowsNum = rowsNum + 1sheet.cells(rowsNum, 1) = “属性名“sheet.cells(rowsNum, 2) = “说明“sheet.cells(rowsNum, 3) = “sheet.cells(rowsNum

10、, 4) = “字段中文名“sheet.cells(rowsNum, 5) = “字段名“sheet.cells(rowsNum, 6) = “字段类型“sheet.cells(rowsNum, 7) = “是否主键“sheet.cells(rowsNum, 8) = “是否外键“sheet.cells(rowsNum, 9) = “是否必填“设置边框sheet.Range(sheet.cells(rowsNum-1, 1),sheet.cells(rowsNum, 2).Borders.LineStyle = “1“sheet.Range(sheet.cells(rowsNum-1, 4),

11、sheet.cells(rowsNum, 9).Borders.LineStyle = “1“Dim col running columnDim colsNumcolsNum = 0for each col in tab.columnsrowsNum = rowsNum + 1colsNum = colsNum + 1sheet.cells(rowsNum, 1) = col.namesheet.cells(rowsNum, 2) = mentsheet.cells(rowsNum, 3) = “sheet.cells(rowsNum, 4) = col.namesheet.cells(row

12、sNum, 5) = col.codesheet.cells(rowsNum, 6) = col.datatypesheet.cells(rowsNum, 7) = col.primarysheet.cells(rowsNum, 8) = col.foreignkeysheet.cells(rowsNum, 9) = col.mandatorynextsheet.Range(sheet.cells(rowsNum- colsNum+1,1),sheet.cells(rowsNum,2).Borders.LineStyle = “2“ sheet.Range(sheet.cells(rowsNum- colsNum+1,4),sheet.cells(rowsNum,9).Borders.LineStyle = “2“rowsNum = rowsNum + 1Output “FullDescription: “ + tab.NameEnd IfEnd Sub

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号