使用SchemaSpy工具可以快速的从数据库中得到表的依赖关系,同时生成一个生动的“表图”结合的报告。方便快速了解数据库中的数据库对象间关系,类似于PowerDesigner和Toad Data Modeler反向工程得到的结果。但是导出比PowerDesigner更加美观和漂亮。HTML格式报告的交互查询功能非常的方便,更值得称赞的是该工具是使用JAVA编写的开源软件。

通过这个小文儿向大家展示一下这个开源工具的使用方法和强大魅力。

1.必须的软件

1)JDK下载,因为是JAVA程序,所以JDK是必须的。版本最好是1.6或者以上

2)SchemaSpy下载。

3)Graphviz下载,SchemaSpy工具需要使用Graphviz工具中的dot程序绘制表间关系的图片。

假如Graphviz安装在D:Program Files (x86)Graphviz2.38目录,则需要添加D:Program Files (x86)Graphviz2.38bin;到环境变量Path

4)JDBC

这里我的目的是连接Db2数据库,所以需要DB2的db2jcc.jar,此jar包可以在db2的安装路径中找到。如果只安装了连接db2的客户端,则需要category db.

2.使用方法

1)基本命令语法

java -jar schemaSpy_5.0.0.jar -t dbType -db dbName [-s schema] -u user [-p password] -o outputDir

2)具体使用:

java -jar schemaSpy_5.0.0.jar -t db2net -db ITM -host itmdb -u user -p user -port 50000 -dp C:Program FilesschemaSpyGUI20090302db2jcc.jar -o output -s itmuser

3使用到的参数详解

java -jar schemaSpy_5.0.0.jar 调用schemaSpy的jar包

-t orathin 表明连接的是Oracle数据库

-db secooler 数据库的名字,这里可以指定为Oracle的实例名字

-host 主机名,因为是远程操作,这里我指定的是主机的IP地址。如果是连接本地可以指定为“localhost”

-u sec 连接到数据库的用户名

-p sec 连接到的数据库的密码

-port 连接端口号

-dp 指定jdbc的路径

-o 在命令执行的当前路径下生成一个名为output 的文件夹,用来保存生成的报告文件

-s SEC 对itmuser这个Schema进行报告生成

-hq 生成高品质的图片,也可以使用“-lq”选项生成低品质图片,这样可以节省一些空间。

更多命令选项参考

4.查看生成的报告

直接双击Schema_SEC目录中的index.html文件即可得到报告全貌。

演示报告请参见,这个页面真实的体现了SchemaSpy工具的强大魅力。

5.简化操作==使用图形化工具

图形化的工具下载地址如下,慢慢体验吧。

6.SchemaSpy工具还支持哪些数据类型?

使用“-dbhelp”选项查看schemaSpy_4.1.1.jar这个版本支持的数据库类型

E:softwareGraphviz>java -jar schemaSpy_4.1.1.jar -dbhelp

命令结果省略,简单列一下支持数据库的类型如下,基本上所有主流的数据库都支持了。

Type Description

db2 IBM DB2 with ‘app’ Driver

db2net IBM DB2 with ‘net’ Driver

derby Derby (JavaDB) Embedded Server

derbynet Derby (JavaDB) Network Server

firebird Firebird

hsqldb HSQLDB Server

informix Informix

maxdb MaxDB

mssql Microsoft SQL Server

mssql05 Microsoft SQL Server 2005

mssql-jtds Microsoft SQL Server with jTDS Driver

mssql05-jtds Microsoft SQL Server 2005 with jTDS Driver

mysql MySQL

ora Oracle with OCI8 Driver

orathin Oracle with Thin Driver

pgsql PostgreSQL

sybase Sybase Server with JDBC3 Driver

sybase2 Sybase Server with JDBC2 Driver

udbt4 DB2 UDB Type 4 Driver

spy导入数据到oracle,运用SchemaSpy逆向工程制作数据库文档相关推荐

  1. Debezium系列之:使用Debezium接入SQL Server数据库数据到Kafka集群的详细技术文档

    Debezium系列之:使用Debezium接入SQL Server数据库数据到Kafka集群的详细技术文档 一.Debezium概述 二.SQL Server 连接器的工作原理 1.Snapshot ...

  2. Oracle Enterprise Manager Cloud Control最新文档合集

    2019独角兽企业重金招聘Python工程师标准>>> Oracle Enterprise Manager Cloud Control最新文档合集 Oracle企业管理器系列产品为当 ...

  3. Debezium系列之:使用Debezium接入PostgreSQL数据库数据到Kafka集群的详细技术文档

    Debezium系列之:使用Debezium接入PostgreSQL数据库数据到Kafka集群的详细技术文档 一.概述 二.连接器的工作原理 1.安全 2.快照 3.Ad hoc snapshots ...

  4. Oracle EBS R12.2 新特性文档

    附件描述: 附件包含EBS从R12版本到R12.2版本的一些改进特征 Attached is document describing important enhancements to EBS sin ...

  5. c 导入数据到oracle,excel中数据导入到Orcale数据库表中的方法 | 学步园

    最近我们要做产品的测试,由于里面的数据量太少,上头要我往数据库的表里加上10000条记录.我想如果一条一条地往里加,还不要几个月呀,人也要被累死.所以,我很快地就想到了利用工具加. 就上网搜索,大多介 ...

  6. apache sgoop 导入数据到 oracle、导出数据到 oracle 实现

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 业务场景:是在oracle 数据库和  hive 数据库中 ,有多个相同结构的表,要求数据从2个库定 ...

  7. cmd导入数据到Oracle,oracle在cmd下通过命令导入导出数据

    1.首先在cmd下切换到oracle的客户端的exp.exe所在的bin目录下,例如 D:\oracle\product\10.2.0\client_2\BIN 数据导出:导出的数据库名称是在tnsn ...

  8. 把Excel数据填充word模板生成多份word文档

    有些事情,你想记得的就会记得.有些事情,你想忘记的就会忘记,如果忘记不了,那就不要忘记了,因为忘记是不需要努力的. Model_Car.cs代码 public class Model_Car{publ ...

  9. Android数据存储——2.文件存储_C_DOM解析XML文档

    今天学习Android数据存储--文件存储_DOM解析XML文档 位于org.w3c.dom操作XML会比较简单,就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述,但对大型XML文件效 ...

最新文章

  1. 判断一个点是否在RotatedRect中
  2. CISSP备考系列之行政性管理[10-37]
  3. SAP 开发陷阱一箩筐(01)——创建了函数组却无法激活
  4. 智能导航短信告警的一个逻辑处理
  5. 王道操作系统考研笔记——1.1.2 操作系统的特征
  6. 关于.c和.h 和定义变量的问题
  7. 数据中心节能制冷---冷却塔帮忙
  8. 解决MySQL无法正常启动的问题 Can't connect to MySQL server on 'localhost'(10061)
  9. 统计学习方法——第四章朴素贝叶斯及c++实现
  10. dtw算法 c语言实现,dtw算法 - WELEN
  11. c语言常用的100个程序,100个经典C语言程序,大家可以进来看看。
  12. Java的三种技术架构是什么?
  13. 【爱加密】防止签名破解
  14. 0.96寸OLED的使用
  15. List和Map集合遍历的3种方式
  16. 如何在ARM平台编译NAMD
  17. 基于飞桨实现高精度岩相自动分析,助力油气田勘探开发设计
  18. 刻章不要钱 5个在线印章制作工具
  19. CSS样式解决英文换行断词问题
  20. sap 获取计划订单bapi_【原创】2011.09.18 SAP 订单中修改订单净价

热门文章

  1. Storm 04_Storm单机模式搭建完全分布式安装部署集群drpc
  2. leetcode 312. Burst Balloons | 312. 戳气球(暴力递归->DP)
  3. 【Java文件操作(一)】递归打印文件目录
  4. 在onelogin中使用OpenId Connect Implicit Flow
  5. JDK 15 JAVA 15的新特性展望
  6. Scala教程之:Future和Promise
  7. Linux命令速查(带参数说明)
  8. 数据结构(7)—— 排序总结
  9. 数据结构(2) -- 线性表的顺序表示
  10. HashMap 详解