ResultSet resultSet = statement.executeQuery("select * from tableName")
ResultSetMetaData resultSetMetaData = resultSet.getMetaData()
for(int i=0i<resultSetMetaData.getColumnCount()i++) {
System.out.print( resultSetMetaData.getColumnLabel(i) + "\t" )
System.out.print( resultSetMetaData.getColumnName(i) + "\t" )
System.out.println( resultSetMetaData.getColumnTypeName(i) )
}
JDBC中有个ResultSetMetaData类就是用来获取数据表结构信息的。...
ResultSet rs = ....
ResultSetMetaData rsmd = rs.getMetaData()
//ResultSetMetaData中有如下方法:
getColumnCount()返回 ResultSet 中的列数。
getColumnName(int)返回列序号为 int 的列名。
getColumnLabel(int)返回此列暗含的标签。
isCurrency(int)如果此列包含带有货币单位的一个数字,则返回 true。
isReadOnly(int)如果此列为只读,则返回 true。
isAutoIncrement(int)如果此列自动递增,则返回 true。这类列通常为键,而且始终是只读的。
getColumnType(int)返回此列的 SQL 数据类型。这些数据类型包括
查询所有表名(以用户HR为例):1·登录所要查询的用户然后指令:selecttable_namefromuser_tables2·登录系统管理员用户然后指令:selecttable_namefromdba_tableswhereowner='HR'查询所有索引(以用户hr为例):登录所要查询的用户然后指令:selectuser_indexes.index_name,user_indexes.index_type,user_indexes.table_ownerfromuser_indexes·登录系统管理员用户然后指令:SELECTindex_name,index_type,ownerFROMdba_indexesWHEREowner='HR'ANDTable_owner='EMPLOYEES'欢迎分享,转载请注明来源:内存溢出
评论列表(0条)