Tag: database metadata

JDBC DatabaseMetaData.getColumns()返回重复的列

我忙于编写一段代码来获取Oracle数据库中表的列名。 我想出的代码看起来像这样: DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); Connection conn = DriverManager.getConnection( “jdbc:oracle:thin:@:1521:”, , ); DatabaseMetaData meta = conn.getMetaData(); ResultSet columns = meta.getColumns(null, null, “EMPLOYEES”, null); int i = 1; while (columns.next()) { System.out.printf(“%d: %s (%d)\n”, i++, columns.getString(“COLUMN_NAME”), columns.getInt(“ORDINAL_POSITION”)); } 当我把这个代码运行到我的意外时,返回了太多的列。 仔细观察发现ResultSet包含所有列的重复集合,即每列返回两次。 这是我得到的输出: 1: ID (1) 2: NAME (2) 3: CITY (3) 4: ID (1) 5: NAME (2) […]