0%

JDBC获取元数据

JDBC获取元数据

DatabaseMetaData描述数据库的元数据,可以得到数据库本身的一些信息

1
2
3
4
5
6
7
8
9
10
11
12
13
DatabaseMetaData metaData = connection.getMetaData();
// 获取数据库产品的名称
String name = metaData.getDatabaseProductName();
// jdbc驱动的主版本号
int majorVersion = metaData.getDriverMajorVersion();
// jdbc驱动的次版本号
int minorVersion = metaData.getDriverMinorVersion();
// 连接数据库的用户名
String userName = metaData.getUserName();
// 获取Mysql中有哪些数据库
ResultSet resultSet = metaData.getCatalogs();
// 数据库的版本号
int databaseVersion = metaData.getDatabaseMajorVersion();

描述结果集的元数据,可以得到结果集的基本信息,可以得到结果集中有哪些列,列名,列的别名

1
2
3
4
5
6
7
8
9
10
11
ResultSetMetaData metaData = statement.getMetaData();
// 有多少列
int num = metaData.getColumnCount();
for(int i = 1;i<=num;i++){
// 获取列名称
metaData.getColumnName(i);
// 获取列的类型
metaData.getColumnTypeName(i);
// 获取列的别名(如果没有起别名,则获取到列的列名),通常使用该方法来获取列名,而不使用getColumnName
metaData.getColumnLabel(i);
}