Java结果集元数据(ResultSetMetaData)
1、如何获取结果集元数据?
- 获取
ResultSet
类型的的数据 - 调用方法
getMetaData()
获取结果集的元数据,类型为ResultSetMetaData
2、能获取那些有用的信息?
这里只重点说明常用方法!
getColumnCount()
:获取结果集中列的数量getColumnType(int index)
:获取结果集列的SQL类型编号getColumnTypeName(int index)
:获取结果集列的获取SQL类型名称getColumnClassName(int index)
:获取结果集列的获取JAVA类型
注意:以上获取的是结果集的数据结构信息,不是结果集的内容信息!!!
3、如何应用结果集元数据信息?
我们最终要获取的是结果集中存在的内容信息,而它本身的数据结构信息只是辅助我们获取内容信息,因此获取了元数据,因为获取到了结果集数据列信息,这已经可以通过getString()
、getInt()
等方法来获取结果集中的数据,且我们也已经知道了结果集中各列的类型。
ex:以获取数据库元数据获取到的数据表中列的元数据结果集来说明
我们想要获取某个数据库表的一系列信息:列名、列SQL类型、列JAVA类型、列的备注
。
// metaData是数据库元数据,来自 MetaData metadata = connection.getMetaData();
// 获取数据表中列的结果集元数据
ResultSet columns = metaData.getColumns(null,null,tableName,null);
//
while(columns.next()){
// 列名
String columnName = columns.getString("COLUMN_NAME");
// 类型(数据库SQL类型)
String dbType = columns.getString("TYPE_NAME");
// 备注
String comment = columns.getString("REMARKS");
}
colums.close();
可以发现getString()
中的字符串都是根据列的元数据知道的,从而通过他们获取到结果集中需要的数据,同时制定好数据返回的类型。
4、总结
结果集元数据(ResultSetMetaData),说明了结果集的数据结构信息,他可以作为我们的辅助工具来获取结果集中有用的内容信息。