前话:老系统,居然连数据字典都没,全是SQL。无奈从数据库导出数字字典,很简单的代码,就是读oracel系统表。
把输出保存到文件,然后excel导入,用tab分隔就行了。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Test {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.10.11:1521:hzdev", "xiao",
"xiao");
Statement stmt = con.createStatement();
StringBuffer strbuf = new StringBuffer();
strbuf.append("SELECT A.*,B.comments");
strbuf.append(" FROM all_tab_columns A,DBA_COL_COMMENTS B");
strbuf.append(" WHERE A.owner=B.owner");
strbuf.append(" AND A.table_name=B.table_name");
strbuf.append(" AND A.COLUMN_NAME=B.COLUMN_NAME");
// owner是指要导出哪个用户的
strbuf.append(" AND A.owner='XIAO'");
strbuf.append(" ORDER BY A.TABLE_NAME");
ResultSet rs = stmt.executeQuery(strbuf.toString());
String tb = "";
String tempTb=null;
StringBuffer sb = new StringBuffer();
int count=0;
while (rs.next()) {
tb = rs.getString("TABLE_NAME");
if (!tb.equals(tempTb)) {
count++;
sb.append("\n");
System.out.println(sb.toString());
sb = new StringBuffer();
sb.append("表名:"+tb);
tempTb=tb;
sb.append("\n字段名称\t");
sb.append("字段类型\t");
sb.append("长度\t");
sb.append("数字长度\t");
sb.append("小数位数\t");
sb.append("是否要空\t");
sb.append("字段说明\t");
}
sb.append("\n"+rs.getString("COLUMN_NAME") + "\t");
sb.append(rs.getString("DATA_TYPE") + "\t");
sb.append(rs.getString("DATA_LENGTH") + "\t");
sb.append(rs.getString("DATA_PRECISION") + "\t");
sb.append(rs.getString("DATA_SCALE") + "\t");
sb.append(rs.getString("NULLABLE") + "\t");
sb.append(rs.getString("COMMENTS") + "\t");
}
System.out.println("表的个数:"+count);
rs.close();
stmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
oracle导出excel的数据字典sql,根据该sql可以导出数据字典。
这里介绍的"Oracle 导出数据字典的小工具"是一个实用程序,能够帮助用户将数据字典信息导出为Word格式,方便查看和共享。 首先,数据字典在Oracle中的主要组成部分包括以下几类: 1. **V$视图**:这是Oracle提供的...
`DataDictionaryTool`是一个实用工具,专为MySQL和Oracle设计,旨在简化数据字典的导出过程。通常,手动创建数据字典可能非常耗时,涉及编写和执行SQL查询,然后将结果整理成易于理解的文档格式。这个工具通过执行预...
"Oracle导出WORD数据字典"是一个实用工具或过程,其目的是将Oracle数据库的数据字典信息转换成Microsoft Word文档格式,便于用户阅读、打印和共享。这个过程通常涉及SQL查询和脚本编写,以提取所需的信息,并使用...
导出Oracle的数据字典可能需要执行一系列的PL/SQL脚本,将结果集整合成用户友好的文档。 在提供的压缩包文件中,有以下几个关键组件: 1. `DocumentFormat.OpenXml.dll`: 这是.NET Framework的一个库,用于处理Open...
使用数据字典导出工具,开发人员和DBA可以更有效地理解数据库结构,进行代码审查、文档更新和数据库设计。此外,当项目发生变化或新成员加入时,这样的文档能大大降低学习曲线,提高团队的生产力。因此,...
数据字典生成工具,用于生成 数据库表 及字段说明,主要特征如下: 1、支持的数据库类型:SQL Server 2005+,My SQL,Oracle; 2、支持的文档类型:HTML,CHM,WORD; 3、基于Open XML ,不用安装 MS Office,WPS 也可以生产...
"word导出Oracle的数据字典"是一种方便的方法,它允许用户将这些信息整理成Word文档,便于查阅、分享和存档。 首先,"DBExportDoc V1.0 For Oracle 使用手册.doc"这份文档很可能是对工具的详细指南,它可能涵盖了...
### 从Oracle生成表的数据字典方法 在Oracle数据库管理中,数据字典是一个非常重要的工具,它能够帮助我们理解数据库结构、表定义以及列属性等详细信息。本篇文章将介绍如何从Oracle数据库中利用COMMENT生成Excel...
Oracle数字字典生成器是一款专为数据库管理人员和开发人员设计的实用工具,它能够帮助用户自动化地导出数据库的数据结构,极大地简化了项目需求分析说明书中的数据库部分编写工作。这款软件特别适用于那些需要频繁...
SQL Developer是一款广为人知的数据库开发工具,主要面向Oracle数据库,但这里提到的"mysql数据字典导出工具.zip"显然为MySQL提供类似的功能。 这个压缩包文件可能包含一个或多个实用程序或脚本,用于导出MySQL...
总结起来,"DBGenerator"是一个基于Java开发的数据库字典生成工具,能够便捷地为MySQL、Oracle和SQL Server等数据库生成结构清晰、内容详尽的数据字典。它的存在简化了数据库管理和开发过程中的文档工作,提高了工作...
标题中的“代码及导出数据库字典工具”指的是一个用于帮助开发者或数据库管理员从数据库中导出元数据信息,即数据库结构的详细描述,包括表、字段、索引、外键等信息的软件工具。这样的工具通常以源码形式提供,用户...
这个工具能够导出Oracle数字字典,提供了帮助文档,并且利用Word宏来自动化导出过程,提高了工作效率。 首先,让我们了解一下什么是Oracle数字字典。在Oracle数据库中,字典是一个存储关于数据库本身信息的特殊表和...
### ORACLE用户常用数据字典的查询使用方法 在Oracle数据库管理中,了解并掌握如何查询数据字典是非常重要的技能之一。数据字典是数据库系统内部用来存储有关数据库元数据(即描述数据的数据)的表格集合。对于...
DBDocumentGenerator是一个专为这项任务设计的工具,旨在帮助用户方便地导出数据字典,生成详细的文档,以便于团队成员间的沟通和数据库的维护。 DBDocumentGenerator可能支持多种数据库系统,包括Oracle、MySQL和...
数据字典生成工具,特征如下: 一、支持的数据库 :SQL Server2005 +、MySQL、Oracle 二、支持的文档类型 :HTML、CHM、WORD(自动生成目录) 三、不用安装Office 即可生成 WORD 类型的文档
Excel读取Oracle数据库中的用户信息、表信息 选择生成:用户名、表名、行数、列数、创建时间、列名、类型、主键、备注信息。 可以自定义生成样式。 测试环境:excel2013 启用vba宏,在Oracle配置的sheet... 源代码公开
在Oracle中,数据字典是一个重要的组成部分,它存储了关于数据库本身的信息,如表、视图、索引、用户权限等元数据。了解和掌握Oracle的数据字典对于数据库管理员(DBA)和开发者来说至关重要。 数据字典在Oracle中...