`

PowerDesigner中导出表结构Excel(转载)

 
阅读更多

碰到一个需求,需要将PowerDesigner中的数据库表结构数据导成Excel,网上看到一个很便捷的方法,记录一下

 

在PowerDesigner中,shift+ctrl+X,打开脚本运行,脚本如下

 

'******************************************************************************
'* File:     pdm2excel.txt
'* Title:    pdm export to excel
'* Purpose:  To export the tables and columns to Excel
'* Model:    Physical Data Model
'* Objects:  Table, Column, View
'* Author:   ziyan
'* Created:  2012-05-03
'* Version:  1.0
'******************************************************************************
Option Explicit
   Dim rowsNum
   rowsNum = 0
'-----------------------------------------------------------------------------
' Main function
'-----------------------------------------------------------------------------
' Get the current active model
Dim Model
Set Model = ActiveModel
If (Model Is Nothing) Or (Not Model.IsKindOf(PdPDM.cls_Model)) Then
  MsgBox "The current model is not an PDM model."
Else
 ' Get the tables collection
 '创建EXCEL APP
 dim beginrow
 DIM EXCEL, SHEET
 set EXCEL = CREATEOBJECT("Excel.Application")
 EXCEL.workbooks.add(-4167)'添加工作表
 EXCEL.workbooks(1).sheets(1).name ="test"
 set sheet = EXCEL.workbooks(1).sheets("test")
 
 ShowProperties Model, SHEET
 EXCEL.visible = 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(1).WrapText =true
 sheet.Columns(2).WrapText =true
 sheet.Columns(4).WrapText =true
 End If
'-----------------------------------------------------------------------------
' Show properties of tables
'-----------------------------------------------------------------------------
Sub ShowProperties(mdl, sheet)
   ' Show tables of the current model/package
   rowsNum=0
   beginrow = rowsNum+1
   ' For each table
   output "begin"
   Dim tab
   For Each tab In mdl.tables
      ShowTable tab,sheet
   Next
   if mdl.tables.count > 0 then
        sheet.Range("A" & beginrow + 1 & ":A" & rowsNum).Rows.Group
   end if
   output "end"
End Sub
'-----------------------------------------------------------------------------
' Show table properties
'-----------------------------------------------------------------------------
Sub ShowTable(tab, sheet)
   If IsObject(tab) Then
     Dim rangFlag
     rowsNum = rowsNum + 1
      ' Show properties
      Output "================================"
      sheet.cells(rowsNum, 1) = "实体名"
      sheet.cells(rowsNum, 2) =tab.name
      sheet.cells(rowsNum, 3) = ""
      sheet.cells(rowsNum, 4) = "表名"
      sheet.cells(rowsNum, 5) = tab.code
      sheet.Range(sheet.cells(rowsNum, 5),sheet.cells(rowsNum, 6)).Merge
      rowsNum = rowsNum + 1
      sheet.cells(rowsNum, 1) = "属性名"
      sheet.cells(rowsNum, 2) = "说明"
      sheet.cells(rowsNum, 3) = ""
      sheet.cells(rowsNum, 4) = "字段中文名"
      sheet.cells(rowsNum, 5) = "字段名"
      sheet.cells(rowsNum, 6) = "字段类型"
      '设置边框
      sheet.Range(sheet.cells(rowsNum-1, 1),sheet.cells(rowsNum, 2)).Borders.LineStyle = "1"
      sheet.Range(sheet.cells(rowsNum-1, 4),sheet.cells(rowsNum, 6)).Borders.LineStyle = "1"
Dim col ' running column
Dim colsNum
colsNum = 0
      for each col in tab.columns
        rowsNum = rowsNum + 1
        colsNum = colsNum + 1
      sheet.cells(rowsNum, 1) = col.name
      sheet.cells(rowsNum, 2) = col.comment
        sheet.cells(rowsNum, 3) = ""
      sheet.cells(rowsNum, 4) = col.name
      sheet.cells(rowsNum, 5) = col.code
      sheet.cells(rowsNum, 6) = col.datatype
      next
      sheet.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,6)).Borders.LineStyle = "2"
      rowsNum = rowsNum + 1
      
      Output "FullDescription: "       + tab.Name
   End If
End Sub

 

 

 

 

 

分享到:
评论

相关推荐

    PowerDesigner 导出表结构 到Excel

    1,打开PowerDesigner,找到创建的物理模型(Physical Data Model), 2,使用快捷键,或者 在PowerDesigner菜单栏中,依次点击“Tools ->Excute Commands->Edit/Run Script....4,将导出的结果(Excel)保存到自己的位置

    PowerDesigner导出表结构到Excel脚本

    步骤: 1、用PowerDesigner打开要导出的PDM文件 2、Tools->Execute Commands -> Edit/Run Script... 3、点击Open图标(打开文件夹)找到该脚本文件 4、点击Run按钮

    PowerDesigner中导出表结构Excel

    PowerDesigner中导出表结构Excel

    PowerDesigner导出数据表结构

    总的来说,"PowerDesigner导出数据表结构"涉及到数据库设计流程中的一个重要环节,即模型的输出和共享。通过正确地使用PowerDesigner的导出功能,可以有效地管理和维护数据库结构,提高团队协作的效率。而提供的.rtp...

    PowerDesigner从数据库中导出表结构

    ### PowerDesigner从数据库中导出表结构 #### 一、PowerDesigner简介 PowerDesigner是一款功能强大的CASE工具,广泛应用于数据库设计、数据建模等领域。它能够帮助开发人员和数据库管理员快速构建高质量的数据模型...

    通过PowerDesigner从数据库导出表结构到Word.docx

    本文将详细介绍如何使用PowerDesigner从Oracle数据库中导出表结构到Word文档。 首先,需要新建一个 Physical Data Model,在PowerDesigner中创建一个新的Model,并选择DBMS为Oracle Version 11g。然后,选择...

    Powerdesigner把表结构导出成word.docx

    本文将详细介绍如何使用PowerDesigner 16.5将数据库表结构导出为Word文档,以及相关的数据库操作和配置。 一、连接数据库 1. 启动PowerDesigner,进入主界面。点击菜单栏中的“Database”(数据库),然后选择...

    PowerDesigner导出表结构

    "PowerDesigner导出表结构"这一操作是数据库管理员和开发人员日常工作中常见的需求,它能让我们清晰地了解数据库的架构,并方便地进行维护和共享。 PowerDesigner支持多种数据库管理系统,包括Oracle。在本例中,...

    PowerDesigner里pdm表结构转换成Excel表结构

    执行脚本命令,把pdm文件导出成Excel格式的表结构定义。

    PowerDesigner从数据库中导出表结构.doc

    PowerDesigner从数据库中导出表结构 PowerDesigner是一款功能强大且广泛应用于数据建模和数据库设计的软件工具,支持多种类型的数据库管理系统,包括Oracle、Microsoft SQL Server、DB2、Informix等。在实际应用中...

    powerdesigner导入excel生成表结构

    通过PowerDesigner的脚本功能,用户可以实现将Excel中的数据转换为PowerDesigner模型中的表结构。这种方法尤其适用于需要快速基于已有数据定义表结构的情况。 #### 准备工作 在开始之前,请确保您的计算机上已安装...

    Powerdesigner 15 表结构导出Word

    在实际应用中,用户常需要将 Powerdesigner 15 中的表结构导出到 Word 文档中,以便于与其他团队成员或外部合作伙伴进行交流和分享。以下是使用 Powerdesigner 15 将表结构导出到 Word 文档的操作指南。 Step 1: ...

    通过PowerDesigner从数据库导出表结构到Word

    本文将详细介绍如何使用PowerDesigner从Oracle数据库导出表结构到Word文档,无论是通过预设模板还是自定义报告。 首先,我们需要创建一个新的模型(Physical Data Model)。在PowerDesigner中,这被称为"Model1",...

    导出数据表结构到Excel 一个表一个Sheet 带链接目录.vbs

    PowerDesigner导出数据表结构到Excel 一个表一个Sheet 带链接目录。每个表一个链接

    PowerDesigner导出word,html,excel的方法总结

    该方法为powerdesigner逆向连接oracle数据库,生成.pdm文件,然后根据.pdm文件导出数据库文档的方法,文档中的方法都已经测试,可以导出word,html,和word三种格式。

    powerdesign表结构导出到EXCEL脚本

    2. **选择要导出的对象**:在项目中,选择你需要导出到Excel的表结构。你可以通过选择整个数据库、特定的表或视图来定制导出内容。 3. **设置导出选项**:在“文件”菜单中,找到“导出”选项,然后选择“Excel”...

    PowerDesigner导出word,PowerDesigner把表导出到word,PDM导出word文档

    标题中的“PowerDesigner导出word,PowerDesigner把表导出到word,PDM导出word文档”涉及到的是使用PowerDesigner这款强大的数据库设计工具将数据库模型(PDM,Physical Data Model)转换为Word文档的过程。...

    PowerDesigner生成数据表结构Excel.vbs

    可以通过PowerDesigner生成数据表结构,打开pd脚本编辑器 PD菜单栏中,依次点击“Tools ->Excute Commands->Edit/Run Script..”,选择执行本文的vbs文件即可生成excel

    powerdesigner导出excel脚本

    powerdesigner导出excel脚本

Global site tag (gtag.js) - Google Analytics