有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

jdbc如何从Java的ResultSet中通过别名/标签获取列?

假设我有一个SP,它的结尾是SELECT a as b FROM example_table

当我这么做的时候

// Some magical code goes here
ResultSet rs = callableStatement.executeQuery();
while(rs.next()) {
    System.out.printLn(rs.getString("b"));
}
// Some magical code goes here

我得到一个错误,告诉我该列不存在,但是当我更改rs.getString("a")的代码时,它将正确执行。这似乎是因为getString(String)根据列的名称而不是别名/标签获取列

我不能通过别名来判断如何获取结果集

PS:我发现了一个类似的问题here.


共 (2) 个答案

  1. # 2 楼答案

    @Alper在钱上

    他们更改了驱动程序,并为需要设置为“true”的名称添加了连接属性GET_COLUMN_LABEL_。我以为这只是为了结果元数据,但显然不是那么多

    这很奇怪,但是试试看

    Sybooks中引用

    Sybase新闻组Article