Java_jdbc 基础笔记之十四 数据库连接(元数据)数据库信息及连接信息
public class MetaDatatest { /** * DatabaseMetaData 是描述 数据库的元数据对象 可以由Connection得到 */ @Test public void testDatabaseMetaData() { Connection conn = null; ResultSet rs = null; try { conn = JDBCTools.getConnection(); DatabaseMetaData data = conn.getMetaData(); // 可以得到数据库本身的一些基本信息 // 1、得到数据库的版本号 int version = data.getDatabaseMajorVersion(); System.out.println(version); // 2. 德奥数据库的用户名 String user = data.getUserName(); System.out.println(user); // 3、得到MySQL中有哪些数据库 rs = data.getCatalogs(); while (rs.next()) { System.out.println(rs.getString(1)); } } catch (Exception e) { e.printStackTrace(); } finally { JDBCTools.close(rs, null, conn); } } // ======================================================== /** * ResultSetMetaData:描述结果集的元数据 可以得到结果集的基本信息: 结果集中有哪些列,列名,列的别名等。。。 * */ @Test public void testResultSetMetaData() { Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; try { conn = JDBCTools.getConnection(); String sql = "SELECT id,name customersName,email custEMAIL,birth FROM customers"; ps = conn.prepareStatement(sql); rs = ps.executeQuery(); // 1 得到ResultSetMetaData对象 ResultSetMetaData rmsd = rs.getMetaData(); // 2得到列的个数 int columnCount = rmsd.getColumnCount(); System.out.println(columnCount); for (int i = 0; i < columnCount; i++) { // 3得到列名 String columnName = rmsd.getColumnName(i + 1); // 4.得到列的别名 String columnLabel = rmsd.getColumnLabel(i + 1); System.out.println(columnName + " " + columnLabel); } } catch (Exception e) { e.printStackTrace(); } finally { JDBCTools.close(rs, ps, conn); } } }
转: https://blog.****.net/YL1214012127/article/details/48374599