在我的java应用程序中,我运行sql查询,例如:
select rowid as col1, id as col2 from dummy_table
然后,当我使用ResultSetMetaData.getColumnNames时,我希望得到列别名(col1和col2),但是方法返回物理列名。
所以,我的问题是,如何使用ResultSetMetaData获取列别名
我使用Java 1.6,Jdbc,Sybase
非常感谢
答案 0 :(得分:4)
也许你的驱动程序不理解别名列。尝试调用ResultSetMetaData.getColumnLabel()
以查看其获得的内容
答案 1 :(得分:3)
我注意到MySQL中有类似的东西 - 快速解决方法是将主查询转换为子查询,如下所示:
select v.* from (
select rowid as col1, id as col2 from dummy_table
) as v
答案 2 :(得分:1)
您可以使用临时表
select rowid as col1, id as col2 INTO #tmp from dummy_table
select * from #tmp
我认为这会奏效。
第二种解决方案
还要检查ResultSetMetaData的String getColumnLabel(int column)
函数