result=sqlstring.executeQuery("select distinct table_name,owner from all_tables ")
rs.append(str(i)+' , '+result.getString("table_name")+' , '+result.getString("owner"))
如果我想显示查询select * from all_tables
或' select count(*) from all_tables'
如何才能显示输出。请建议谢谢
答案 0 :(得分:0)
正如另一个问题所示:要显示查询结果,您不知道查询返回的列数,您必须使用元数据(最佳)或迭代并在getString(i)
引发异常时完成。
如果你知道返回了多少列,就像cnt(*)
一样,你只需使用rs.getString(1)
:
rs = conn.executeQuery("select count(*) from my_table")
while (rs.next()):
cnt = rs.getString(1)
使用cnt(*)
,您可以使用getInt(1)
,或使用AS
命名列:
select count(*) as rec_cnt from my_table
并使用rec_cnt = rs.getInt('rec_cnt')
获取它。
如果您使用JDBC,您应该阅读有关它的内容并熟悉Java doc,如:RecordSet