导出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…

模块(sys/os/序列化模块)

sys 模块: sys.path 返回模块的搜索路径,初始化时使用pythonpath环境变量的值 sys.modules 返回所有在当前这个python程序中导入的模块的 sys.exit 退出程序 sys.argv 返回一个列表 列表的第一个元素是执行这个文件的时候,写在python后面的第一个值, 之后的元素是在执行…

JPA 2 | 获取联接以及我们是否应该使用它们

介绍 最近,我一直在与JPA 2中的FETCH JOINS一起使用,以期从数据库中急切地获取数据,并且我学到了很多关于为什么在日常操作中应避免使用Fetch Joins的知识。 今天的博客文章谈论了我在Fetch上的经历和学习(主要基于当我在查询中有…

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"…

Shell 简单的java微服务jar包 -- 部署脚本

部署描述&#xff1a; 1.jenkins 通过maven编译成jar 项目包 2.shell 脚本从jenkins机器发布到&#xff1a;目标主机 注释&#xff1a;次脚本没有写jar包的备份&#xff0c;有时间加上 脚本内容&#xff1a; #!/bin/bash#线上服务器列表 HOST_LIST${:2}#项目名 REMOTE_PROJECT$…

BZOJ 4552 [Tjoi2016Heoi2016]排序 | 二分答案 线段树

题目链接 题面 题目描述 在2016年&#xff0c;佳媛姐姐喜欢上了数字序列。因而他经常研究关于序列的一些奇奇怪怪的问题&#xff0c;现在他在研究一个难题&#xff0c;需要你来帮助他。这个难题是这样子的&#xff1a;给出一个1到n的全排列&#xff0c;现在对这个全排列序列进行…

python import 类 继承_python学习之类的继承

面向对象中一个重要的特性就是继承&#xff0c;继承的好处就是提高代码的重用率&#xff0c;减少不必要的代码。继承是父类与子类的关系&#xff0c;当子类继承了父类后&#xff0c;就具有了父类的所有变量和方法。在python中定义继承的语法是&#xff1a;class 派生类名(基类名…

Html5画布(canvas)实例之绘制矩形

路径方式绘制 - 矩形 | rect()canvas/shape/path/rect.html <!DOCTYPE HTML><html><head> <title>以路径的方式在 canvas 上绘制矩形的 demo</title></head><body> <canvas id"canvas" width"300" hei…

[patl1-046]整除光棍

解题关键&#xff1a;模拟除法 #include<cstdio> #include<cstring> #include<algorithm> #include<cstdlib> #include<iostream> #include<cmath> using namespace std; typedef long long ll; char ans[10002]; int main(){int n;cin>…

使用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…

全局对象与临时转换

全局对象 ECMAScript 规定全局对象叫做 global&#xff0c;但是浏览器把 window 作为全局对象 这些全局变量分为两种&#xff1a; ECMAScript 规定的global.parseIntglobal.parseFloatglobal.Numberglobal.Stringglobal.Booleanglobal.Object 浏览器自己加的属性window.alertwi…

Html5开发-使用Canvas绘制图片

呈现图片 | drawImage()canvas/media/image.html <!DOCTYPE HTML><html><head> <title>在 canvas 上呈现图片的 demo</title></head><body> <canvas id"canvas" width"800" height"600" sty…

文件上传控件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…

python里orient_OrientDB Python连接操作

OrientDB Python连接操作Python的OrientDB驱动程序使用二进制协议。 PyOrient是git hub项目名称&#xff0c;它用于将OrientDB与Python连接起来并操作数据。 它适用于OrientDB 1.7及更高版本。以下命令用于安装PyOrient。pip install pyorient可以使用名为demo.py的脚本文件执行…

HTML5-画布(canvas)效果之-渐变色

<!DOCTYPE HTML><html><head> <title>渐变色</title></head><body> <canvas id"canvas" width"200" height"100" style"background-color: rgb(222, 222, 222)"> 您的浏…

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

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