【发布时间】:2012-09-29 01:39:04
【问题描述】:
我正在尝试编写一个 JTable,它从 ResultSet 获取数据并使用它来创建一个动态大小的表,其中包含 ResultSet 中的适当列名和行数据值,但我无法让 JDBC 获取列名对我来说是动态的。
我知道我的选择语句很好!我可以使用我编写的 ResultPrinter 类轻松打印结果,但由于某种原因我似乎无法获取列名。
代码:http://pastebin.com/SSNdCkNu
输出:
Connected to DB!
SNUM, SNAME, STATUS, CITY, SUPPLIERS_ID_SEQ // printed by static Suppliers class
Columns: 5 // result set shows there are 5 valid columns as expected
Exception in thread "main" java.sql.SQLException: Invalid column index: getValidColumnIndex
at oracle.jdbc.driver.OracleResultSetMetaData.getValidColumnIndex(OracleResultSetMetaData.java:138)
at oracle.jdbc.driver.OracleResultSetMetaData.getColumnName(OracleResultSetMetaData.java:306)
at Main.main(Main.java:15)
【问题讨论】: