Java结果集获取返回的字段名

Java结果集获取返回的字段名,java,sql,resultset,Java,Sql,Resultset,对于标准查询,我对此没有问题。我只是: ResultSet rs = stmt.executeQuery("SELECT a, b FROM table_name"); ResultSetMetaData rsMetaData = rs.getMetaData(); int numberOfColumns = rsMetaData.getColumnCount(); for (int i = 1; i < numberOfColumns + 1; i++) { String fi

对于标准查询,我对此没有问题。我只是:

ResultSet rs = stmt.executeQuery("SELECT a, b FROM table_name");
ResultSetMetaData rsMetaData = rs.getMetaData();
int numberOfColumns = rsMetaData.getColumnCount();

for (int i = 1; i < numberOfColumns + 1; i++) {
    String fieldName = rsMetaData.getColumnName(i);
    System.out.print(fieldName + ",  ");
}
它抛出一个错误,因为未找到
a
b
字段


我应该如何满足这一需求?谢谢

列名和列标签之间存在差异。
ResultSet
中的方法需要列标签。因此,您应该使用方法
ResultSetMetaData.getColumnLabel
而不是
ResultSetMetaData.getColumnName

列名和列标签之间存在差异。
ResultSet
中的方法需要列标签。因此,您应该使用方法
ResultSetMetaData.getColumnLabel
,而不是
ResultSetMetaData.getColumnName

ResultSet rs = stmt.executeQuery("SELECT a AS foo, b AS bar FROM table_name");