java获取Oracle和access数据库结构

第一步,获取access所有表名   

1.

List  list = new ArrayList();
DatabaseMetaData  dbmd=Conn.getMetaData(); 
 
ResultSet  rs=dbmd.getTables(null,
null,"%",new String[]{"SYNONYM","TABLE"});  
while(rs.next()){ 
 

         String tableName=rs.getString(3);  

 

getTables(String catalog,

                    String schemaPattern,

                    String tableNamePattern,

                    String[] types)


参数:

catalog - 类别名称;它必须与存储在数据库中的类别名称匹配;该参数为 "" 表示获取没有类别的那些描述;为 null 则表示该类别名称不应该用于缩小搜索范围

schemaPattern - 模式名称的模式;它必须与存储在数据库中的模式名称匹配;该参数为 "" 表示获取没有模式的那些描述;为 null 则表示该模式名称不应该用于缩小搜索范围

tableNamePattern - 表名称模式;它必须与存储在数据库中的表名称匹配

types - 要包括的表类型所组成的列表,必须取自从 getTableTypes() 返回的表类型列表;null 表示返回所有类型

 

2.获取Oracle所有表名称:

List  list = new ArrayList();
DatabaseMetaData  dbmd=Conn.getMetaData(); 
 
ResultSet  rs=dbmd.getTables(null,userName,"%",new String[]{"TABLE"});  
while(rs.next()){ 
 

        String tableName=rs.getString(3);  

 

区别就在于(红色标记的部分)。

userName 改数据库的用户名。

第二步,获取某一个表的列名:

DatabaseMetaData dbmt = conn.getMetaData();
ResultSet columnSet = dbmt.getColumns(null, "%", tableName, "%");//oracle

ResultSet columnSet = dbmt.getColumns(null,null, tableName, "%");//access
while(rs.next()){
 

 String columnName = columnSet.getString("COLUMN_NAME");//字段名称(列名)

String fidld_type =columnSet.getString("TYPE_NAME");//字段类型


}

 
//获得所有列的数目及实际列数 
int columnCount=data.getColumnCount();
 
//
获得指定列的列名 
String columnName = data.getColumnName(i);
 
//
获得指定列的列值 
String columnValue = rs.getString(i);
 
//
获得指定列的数据类型 
int columnType=data.getColumnType(i);
 
//
获得指定列的数据类型名 
String columnTypeName=data.getColumnTypeName(i);
 
//
所在的Catalog名字 
String catalogName=data.getCatalogName(i);
 
//
对应数据类型的类 
String columnClassName=data.getColumnClassName(i);
 
//
在数据库中类型的最大字符个数 
int columnDisplaySize=data.getColumnDisplaySize(i);
 
//
默认的列的标题 
String columnLabel=data.getColumnLabel(i);
 
//
获得列的模式 
String schemaName=data.getSchemaName(i);
 
//
某列类型的精确度(类型的长度) 

 

 

可以去参考Java  API文档有详细的介绍。

你可能感兴趣的:(java获取Oracle和access数据库结构)