导出mysql excel数据字典_mysql导出 Excel数据字典(全)

解决问题(有mysql数据库数据表想要将表导入到PowerDesigner 或导出Excel数据字典)

一、下载工具

1、工具PowerDesigner 百度自行下载安装

2、mysql-connector-odbc 下载链接: https://pan.baidu.com/s/1cjb73f3GvkkMFAzZKi85xA 提取码: u5ih

二、mysql数据库数据表想要将表导入到PowerDesigner

1、创建一个新的PowerDesigner

(一)创建逆向工程

d6ecc0aeab6f46d5f056df38a8d8fccf.png

(二)选择数据库类型我们这里是mysql

c4a491963775d5e652f4dbee52142809.png

(三)连接我们的数据库 点击连接按钮

a245108cc37cb828cb59b2d51ab5765b.png

(四)点击配置

d37d3931e392d9b28112802e4b894303.png

(五)点击新增一个数据连接 点击确定

09901fe254154f1d5c47b863a1330744.png

(六)选择用户数据源  下一步

c109a4fe76c2d53f27050fe6deae72d8.png

(七)选择mysql  下一步

2afccabe8a8258e035f8523c83d2a407.png

(八)点击完成

775d6fb1539a29587d68f072686a428f.png

(九)填写用户名密码 第一项创建数据源名称,第二项创建数据源描述,第三项创建数据源的IP地址 端口号,第四项名称,第五项密码,

最后一项想要导的数据库这里可以不选 点击Test成功后点击ok 就会出现一个刚创建的数据源点击确定

901af33ab10da14b4e6a45914dfe61b2.png

5fb2312e83f023c3faf04061e9cece08.png

(十)选择刚刚创建的数据源 连接确定

55a9fe8eb839851ffbc87bf5516ee3e8.png

a1a6cf4d6be375f717a8323268d2b738.png

(十一)选择要导的库(如要导出所有表可滑到最上面可选择All users)点击ok再点击ok

573d7704eb9f70307df6eaeff4dd675e.png

7c5fc3382981e241740fa82d70e09aad.png

(十二)mysql数据库数据表想要将表导入到PowerDesigner(完成)

13cb871b07d5d70e8aa7e9dc721b0644.png

1853a98f931effd56889f4667c5ab774.png

三、导出Excel数据字典

1、选中想要导出Excel数据字典的表 按ctrl + shift +x 然后运行脚本 大功告成

90865d79f96372d279b5e51d6c210a5e.png

'******************************************************************************

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, SHEETLIST

set EXCEL= CREATEOBJECT("Excel.Application")

EXCEL.workbooks.add(-4167)'添加工作表

EXCEL.workbooks(1).sheets(1).name ="表结构"set SHEET= EXCEL.workbooks(1).sheets("表结构")

EXCEL.workbooks(1).sheets.add

EXCEL.workbooks(1).sheets(1).name ="目录"set SHEETLIST= EXCEL.workbooks(1).sheets("目录")

ShowTableList Model,SHEETLIST

ShowProperties Model, SHEET,SHEETLIST

EXCEL.workbooks(1).Sheets(2).Select

EXCEL.visible= true

'设置列宽和自动换行

sheet.Columns(1).ColumnWidth = 20sheet.Columns(2).ColumnWidth = 20sheet.Columns(3).ColumnWidth = 20sheet.Columns(4).ColumnWidth = 40sheet.Columns(5).ColumnWidth = 10sheet.Columns(6).ColumnWidth = 10sheet.Columns(1).WrapText =truesheet.Columns(2).WrapText =truesheet.Columns(4).WrapText =true

'不显示网格线

EXCEL.ActiveWindow.DisplayGridlines =False

End If'-----------------------------------------------------------------------------' Show properties of tables'-----------------------------------------------------------------------------

Sub ShowProperties(mdl, sheet,SheetList)' Show tables of the current model/package

rowsNum=0beginrow= rowsNum+1Dim rowIndex

rowIndex=3

' For each table

output "begin"Dim tab

For Each tab In mdl.tables

ShowTable tab,sheet,rowIndex,sheetList

rowIndex= rowIndex +1Nextif mdl.tables.count > 0then

sheet.Range("A" & beginrow + 1 & ":A" &rowsNum).Rows.Group

endifoutput"end"End Sub'-----------------------------------------------------------------------------' Show table properties'-----------------------------------------------------------------------------

Sub ShowTable(tab, sheet,rowIndex,sheetList)

If IsObject(tab) Then

Dim rangFlag

rowsNum= rowsNum + 1

' Show properties

Output "================================"sheet.cells(rowsNum,1) =tab.name

sheet.cells(rowsNum,1).HorizontalAlignment=3sheet.cells(rowsNum,2) =tab.code'sheet.cells(rowsNum, 5).HorizontalAlignment=3

'sheet.cells(rowsNum, 6) = ""

'sheet.cells(rowsNum, 7) = "表说明"

sheet.cells(rowsNum, 3) =tab.comment'sheet.cells(rowsNum, 8).HorizontalAlignment=3

sheet.Range(sheet.cells(rowsNum, 3),sheet.cells(rowsNum, 7)).Merge'设置超链接,从目录点击表名去查看表结构

'字段中文名 字段英文名 字段类型 注释 是否主键 是否非空 默认值

sheetList.Hyperlinks.Add sheetList.cells(rowIndex,2), "","表结构"&"!B"&rowsNum

rowsNum= rowsNum + 1sheet.cells(rowsNum,1) = "字段中文名"sheet.cells(rowsNum,2) = "字段英文名"sheet.cells(rowsNum,3) = "字段类型"sheet.cells(rowsNum,4) = "注释"sheet.cells(rowsNum,5) = "是否主键"sheet.cells(rowsNum,6) = "是否非空"sheet.cells(rowsNum,7) = "默认值"

'设置边框

sheet.Range(sheet.cells(rowsNum-1, 1),sheet.cells(rowsNum, 7)).Borders.LineStyle = "1"

'sheet.Range(sheet.cells(rowsNum-1, 4),sheet.cells(rowsNum, 9)).Borders.LineStyle = "1"

'字体为10号

sheet.Range(sheet.cells(rowsNum-1, 1),sheet.cells(rowsNum, 7)).Font.Size=10Dim col' running column

Dim colsNum

colsNum= 0

foreach col in tab.columns

rowsNum= rowsNum + 1colsNum= colsNum + 1sheet.cells(rowsNum,1) =col.name'sheet.cells(rowsNum, 3) = ""

'sheet.cells(rowsNum, 4) = col.name

sheet.cells(rowsNum, 2) =col.code

sheet.cells(rowsNum,3) =col.datatype

sheet.cells(rowsNum,4) =col.comment

If col.Primary= trueThen

sheet.cells(rowsNum,5) = "Y"Else

sheet.cells(rowsNum,5) = " "End If

If col.Mandatory= trueThen

sheet.cells(rowsNum,6) = "Y"Else

sheet.cells(rowsNum,6) = " "End If

sheet.cells(rowsNum,7) =col.defaultvalue

next

sheet.Range(sheet.cells(rowsNum-colsNum+1,1),sheet.cells(rowsNum,7)).Borders.LineStyle = "3"

'sheet.Range(sheet.cells(rowsNum-colsNum+1,4),sheet.cells(rowsNum,9)).Borders.LineStyle = "3"

sheet.Range(sheet.cells(rowsNum-colsNum+1,1),sheet.cells(rowsNum,7)).Font.Size = 10rowsNum= rowsNum + 2Output"FullDescription: " +tab.Name

End If

End Sub'-----------------------------------------------------------------------------' Show List Of Table'-----------------------------------------------------------------------------

Sub ShowTableList(mdl, SheetList)' Show tables of the current model/package

Dim rowsNo

rowsNo=1

' For each table

output "begin"SheetList.cells(rowsNo,1) = "主题"SheetList.cells(rowsNo,2) = "表中文名"SheetList.cells(rowsNo,3) = "表英文名"SheetList.cells(rowsNo,4) = "表说明"rowsNo= rowsNo + 1SheetList.cells(rowsNo,1) =mdl.name

Dim tab

For Each tab In mdl.tables

If IsObject(tab) Then

rowsNo= rowsNo + 1SheetList.cells(rowsNo,1) = ""SheetList.cells(rowsNo,2) =tab.name

SheetList.cells(rowsNo,3) =tab.code

SheetList.cells(rowsNo,4) =tab.comment

End If

Next

SheetList.Columns(1).ColumnWidth = 20SheetList.Columns(2).ColumnWidth = 20SheetList.Columns(3).ColumnWidth = 30SheetList.Columns(4).ColumnWidth = 60output"end"End Sub

65e3c3a67669c3c48a2b3f7f4b9a5362.png

ab963368de946efeb08fde89fe5b42c1.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/367793.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

斐波那契数列算法小结

关于求解斐波那契数列,这是一道比较经典的题目,本文主要是对斐波那契数列求解方法的小结。 首先,定义Fibonacci数列如下: 方法1: 利用递归求解,这是最容易写出的算法,代码如下: #inc…

mysql yintint类型_MySQL服务器2 被嫌弃的胖子

1.sql的基本语法对数据库create database db1;  创建数据库对表:create database t1(id int,name char(10));  创建表show create table t1;  查看创建的t1表show tables;  查看所有的表desc t1;  查看表的详细结构对数据:insert into t1(id,n…

Html5表单元素-搜索框和上传文件框

1、search - 搜索框element/form/input/search.html<!doctype html><html><head> <title>search</title></head><body> <!-- search - 搜索框&#xff0c;文本框形式 --> <input type"search"…

使用AspectJ审计Spring MVC Webapp。 第2部分

现在&#xff0c;如果您有兴趣创建一个以Aspectj的Aspect和Before批注的形式使用面向方面编程&#xff08;AOP&#xff09;的Spring MVC Webapp来审核用户对屏幕的访问&#xff0c;那么这是您想要阅读的博客。 正如我在上一个博客中所说的那样&#xff0c;审核用户对屏幕的访问…

服装店管理系统打造门店拓客、促活、存留营销方案

打造门店拓客、促活和存留营销方案对于服装店的管理系统来说是非常重要的。以下是一些可行的方案&#xff1a; 1. 会员管理系统&#xff1a;引入会员管理功能&#xff0c;建立会员档案&#xff0c;跟踪会员消费记录和偏好。通过会员系统&#xff0c;可以实施积分制度、生日礼品…

mysql添加映射模块_iis7.5中让html与shtml一样支持include功能(添加模块映射)

刚开始弄得时候&#xff0c;发现了很多错误&#xff0c;其实很简单&#xff0c;参考shtm原来的设置就可以了前提条件&#xff1a;ServerSideIncludeModule的安装&#xff1a;在安装iis的时候选择上该服务(“在服务端包含文件”&#xff0c;选项)即可&#xff0c;如下&#xff1…

文件上传控件bootstrap-fileinput的使用

一、准备1、插件下载地址&#xff1a;https://github.com/kartik-v/bootstrap-fileinput/ 下载后的压缩包解压文件夹内容如下&#xff1a; js&#xff1a;插件核心js代码&#xff0c;引用fileinput.min.js/fileinput.js即可&#xff0c;默认插件语言为英文&#xff0c;如需要中…

在JPA 2.1中使用@Convert正确完成映射枚举

如果您曾经在JPA中使用过Java枚举&#xff0c;那么您肯定会意识到它们的局限性和陷阱。 使用enum作为Entity的属性通常是一个很好的选择&#xff0c;但是2.1之前的JPA不能很好地处理它们。 它给了您2 1个选择&#xff1a; 托肖夫达林 Enumerated(EnumType.ORDINAL) &#xf…

ssh架构之hibernate(一)简单使用hibernate完成CRUD

1.Hibernate简介 Hibernate是一个开放源代码的对象关系映射(ORM)框架&#xff0c;它对JDBC进行了非常轻量级的对象封装&#xff0c;它将POJO与数据库表建立映射关系&#xff0c;是一个全自动的orm框架&#xff0c;hibernate可以自动生成SQL语句&#xff0c;自动执行&#xff0c…

使用AspectJ审计Spring MVC Webapp。 第1部分

如果您像我一样&#xff0c;那么您将拥有那种编程天&#xff0c;一切似乎都进展顺利。 您编写代码和测试&#xff0c;它就可以正常工作。 然后还有其他日子&#xff0c;非常糟糕的日子&#xff0c;在那儿&#xff0c;您知道所编写的所有内容都尽可能正确&#xff0c;并且代码拒…

GitHub注册和Git安装

一、注册GitHub GitHub官方地址&#xff1a;https://github.com。 在浏览器中打开GitHub网址&#xff0c;通过首页进行注册&#xff0c;如下图所示。 二、安装Git Git官方下载地址&#xff1a;http://git-scm.com/download/。 Git支持多平台&#xff08;Mac OS X/Windows/Linux…

如何存储和恢复 HTML5 Canvas 状态

当我们在 HTML5 Canvas 上使用其 2D 上下文进行图形绘制的时候&#xff0c;可以通过操作 2D 上下文的属性来绘制不同风格的图形&#xff0c;例如不同字体、填充等等。 通常情况下&#xff0c;在画布上的绘图时&#xff0c;您需要更改在绘制的2D背景下的状态。例如&#xff0c;你…

innodb和my查询速度_吃透MySQL:MyISAM和InnoDB存储引擎详细介绍

一&#xff0c;MySQL基本架构MySQL基础架构可以分为两大类&#xff1a;Server层和存储引擎层。Server层&#xff1a; Server层涵盖了MySQL大部分核心业务功能&#xff0c;并且所有存储引擎的功能都在这一层实现。存储引擎层&#xff1a;存储引擎有很多&#xff0c;各自有着各自…

Java EE EJB拦截器教程和示例

在此示例中&#xff0c;我们将看到如何在EJB中使用拦截器并使用简单的Web应用程序对其进行测试。 1.简介 顾名思义&#xff0c;当您想拦截对EJB方法的调用时&#xff0c;将使用拦截器。 如果为Bean声明一个拦截器&#xff0c;则每次调用该Bean的方法时&#xff0c;该拦截器的一…

Mac python Tesseract 验证码识别

Tesseract 简介 Tesseract(/tesərkt/) 这个词的意思是"超立方体"&#xff0c;指的是几何学里的四维标准方体&#xff0c;又称"正八胞体"。不过这里要讲的&#xff0c;是一款以其命名的开源 OCR(Optical Character Recognition, 光学字符识别) 软件。 所谓…

如何判断html页面停止滚动?

写在开始的话 查遍的文献&#xff0c;没有找到js或者jquery定义好的方法可用&#xff0c;最后迫不得已自己写了个方法。&#xff08;如果哪位同学知道有其他方法&#xff0c;欢迎讨论&#xff09; 代码 var count_index 0;$(window).scroll(function(e) {if(count_index 0) {…

php 打乱数组顺序_PHP实现大转盘抽奖算法

php中文网最新课程每日17点准时技术干货分享本文通过具体的实例向大家介绍了PHP语言实现大转盘抽奖算法&#xff0c;希望对大家学习PHP抽奖有所帮助。流程&#xff1a;1.拼装奖项数组&#xff1b;2.计算概率&#xff1b;3.返回中奖情况。代码如下&#xff1a;中奖概率 v 可以…

linux线程基础篇----线程同步与互斥

linux线程基础----线程同步与互斥 一、同步的概念 1.同步概念 所谓同步&#xff0c;即同时起步&#xff0c;协调一致。不同的对象&#xff0c;对“同步”的理解方式略有不同。如&#xff0c;设备同步&#xff0c;是指在两个设备 之间规定一个共同的时间参考&#xff1b;数据库同…

分布式系统开发注意事项

开发分布式软件系统时&#xff0c;要考虑许多因素。 如果您甚至不知道第一句话中我在说什么&#xff0c;那么让我为您提供一些见解&#xff0c;示例以及有关分布式系统的实例。 总览 分布式系统是指多个物理硬件设备与单独的离散用户交互并通过这些硬件设备协作以为这些离散的…

只需5步,轻松创建HTML5离线应用

1 – 添加 HTML5 doctype第一件要做的事情是创建一个符合规范的 HTML5 文档。HTML5 doctype 相比于 xhtml 版本的 doctype 而言&#xff0c;要简单明了得多&#xff1a; <!DOCTYPE html><html> ...创建一个名为 index.html 的文档&#xff0c;或者猛击这里下载这份…