rs.getMetaData()。getColumnName(i)在mysql上有别名列

时间:2011-07-18 11:31:57

标签: mysql java metadata

当我有一个类似的查询结果时:

select col as newName from table;

然后我做(在java中):

rs.getMetaData().getColumnName(i)

它返回列的名称而不是“newName”...

如果我这样做

select concat(col,'') as newName from table;

它返回预期的“newName”

有没有办法获得“newName”而不会搞乱sql查询?

这就是mysql,java,tomcat 6。

1 个答案:

答案 0 :(得分:5)

请尝试使用getColumnLabel()

rs.getMetaData().getColumnLabel(i);

仅供参考,我做了一个测试,rs.getMetaData().getColumnName(i)为我工作 - 即它给了我别名,而不是列名,但是你可能正在使用旧版本的JDBC驱动程序和/或mysql数据库。