Fork me on GitHub

用schemaSpy制作数据库文档

Schemaspy是一款Java开发的数据库文档生成工具,是开源的。生成的数据库文档非常的漂亮,实用。最近探索了两天终于会使用这个工具了。我接触到这个工具是在开源的DotNet工作流netBpm网站上看到netBpm的数据库文档。

1、下载软件

JDK下载 http://java.sun.com/javase/index.jsp可以下载到最新版本

SchemaSpy下载 SchemaSpy

Graphviz - Graph Visualization Software 下载 http://www.graphviz.org

SqlServer2005 JDBC驱动下载 http://msdn.microsoft.com/data/jdbc/

2、配置JDK和环境变量

1)确认登陆Windows帐号为管理员级别帐号
2)鼠标右击[我的电脑]-弹出菜单中选择[属性]-弹出对话框中选择[高级]-点击[环境变量]
3)下面操作在[系统变量]中进行,如果系统变量已存在相同变量名且包含相同变量值,则跳过该步操作;如果系统变量已存在相同变量名但未包含相同变量值,则添加该变量值(用英文“;”隔开);如果系统变量不存在相同变量名,则按如下操作[新建]变量名并赋变量值。

[新建]变量名:Java_Home    变量值:c:\ j2sdk1.4.1_02
[新建]变量名:Path    变量值:

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\system32\WBEM;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\Microsoft SQL Server\90\DTS\Binn\;C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\;D:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\;C:\Documents and Settings\Administrator\桌面\IronPython\IronPython-1.0;C:\j2sdk1.4.1_02\bin;C:\PROGRA~1\ATT\Graphviz\bin;
[新建]变量名:ClassPath        变量值:
C:\j2sdk1.4.1_02\lib;C:\j2sdk1.4.1_02\lib\tools.jar;C:\j2sdk1.4.1_02\lib\dt.jar;D:\Program Files\SplendidCRM Software\schemaSpy_3.0.0.jar;c:\Program Files\SplendidCRM Software\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.0\enu\sqljdbc.jar

3、 为运行Schemaspy制作一个批处理命令:

java -jar schemaSpy_3.0.0.jar -t mssql05 -db SPLENDIDCRM -host SHANYOU\SPLENDIDCRM -port 1433 -o SPLENDIDCRM -u crm -p crm -s dbo

java -jar schemaSpy.jar -t dbType -db dbName [-s schema] -u user [-p password] -o outputDir [-nohtml][-noimplied]

Parameter

Description

-t databaseType

Type of database (e.g. ora, db2, etc.). Use -dbhelp for a list of built-in types. Defaults to ora.

*

-db dbName

Name of database to connect to

*

-u user

Valid database user id with read access

-s schema

Database schema (optional if the same as user or isn't supported by your database)

-p password

Password associated with that user. Defaults to no password.

*

-o outputDirectory

Directory to write the generated HTML/graphs to

-cp pathToDrivers

Looks for drivers here before looking in driverPath in [databaseType].properties

-nohtml

Only generate files needed for insertion/deletion of data (e.g. for scripts)

-x columnNamesRegex

Exclude matching columns from relationship analysis to simplify the generated graphs. This is a regular expression that's used to determine which columns to exclude. It must match table name, followed by a dot, followed by column name.
For example: -x "(book.isbn)|(borrower.address)"
Note that each column name regular expression must be surround by ()'s and separated from other column names by a |.

-noimplied

Don't include implied foreign key relationships in the generated table details

* denotes required parameter.

Here are the currently supported database types. Use java -jar schemaSpy.jar -dbhelp for a complete list of the supported database types and the parameters that each one requires.

Type

Description

db2

IBM DB2 with the 'App' Driver

db2net

IBM DB2 with the 'Net' Driver

firebird

Firebird

hsqldb

HSQLDB Server

mssql

Microsoft SQL Server

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

posted @ 2006-09-22 22:49  张善友  阅读(4732)  评论(2编辑  收藏  举报