(); Connection conn = DBUtil.getConnection();
ResultSet tableRs = null; // 存库元数据
ResultSet colRs = null;//存储表元数据
try {
DatabaseMetaData dbmd = conn.getMetaData();//返回连接到的数据库此 Connection 对象所连接的数据库的元数据
//获取所有表
List tableNameList = new ArrayList();
tableRs = dbmd.getTables(null, "%", "%", new String[]{"TABLE"}); //所有表
while (tableRs.next()) {
String tableName = tableRs.getString("TABLE_NAME");//表名
tableNameList.add(tableName);
}
List fieldList = null;//存储每一个表的所有字段
Table table = null;
for (String name : tableNameList ) {
table = new Table();
//获取表的字段
colRs = dbmd.getColumns(null, "%", name, "%");//当前表的字段
Field field = null;
fieldList = new ArrayList();
while (colRs.next()) {
field = new Field();
String columnName = colRs.getString("COLUMN_NAME");//名称
String columnType = colRs.getString("TYPE_NAME");//类型
int datasize = colRs.getInt("COLUMN_SIZE");//字段长度
int digits = colRs.getInt("DECIMAL_DIGITS");
int nullable = colRs.getInt("NULLABLE");//返回1就表示可以是Null,而0就表示Not Null
field.setColumnName(columnName);
field.setTypeName(columnType);
field.setColumnSize(datasize);
field.setDecimal_digits(digits);
field.setNullable(nullable);
fieldList.add(field);
}
table.setTableName(name);
table.setField(fieldList);
tableList.add(table);
}
} catch (SQLException ex) {
Logger.getLogger(ExportOracleTable.class.getName()).log(Level.SEVERE, null, ex);
} finally {
if(colRs != null) {
try {
colRs.close();
} catch (SQLException ex) {
Logger.getLogger(ExportOracleTable.class.getName()).log(Level.SEVERE, null, ex);
}
}
if(tableRs != null) {
try {
tableRs.close();
} catch (SQLException ex) {
Logger.getLogger(ExportOracleTable.class.getName()).log(Level.SEVERE, null, ex);
}
}
if(conn != null) {
try {
conn.close();
} catch (SQLException ex) {
Logger.getLogger(ExportOracleTable.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
return tableList;
}
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
名称栏目:Oracle读取库中表结构-创新互联
文章源于:http://kswjz.com/article/ceeeij.html
扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流