java查询数据库查询集

来源:百度知道 编辑:UC知道 时间:2024/06/19 13:39:24
请问查询完的resultset可以存在哪?
如果我查询完只是一个数字,可以存在int的变量里吗?怎么存?
谢谢~本人初学~
我的查询语句是:select 列名 from 表名 where id=11 and fname='xx' order by 列名 desc limit 1
然后查询出的只是一个数字,现在程序里要用这个数字,我想取这个数字,请问怎么办?
解决了加分~谢谢

ResultSet不是数据, 而是联通程序和数据的一个通道, 就像数据库中的游标, 或者指针一样,它在生成之初, 指向查询结果的0 位置, 如果你查询的是一个数字, 那么说明你可能使用的是数据库函数, 那么如果你没有给查询结果列重命名的话, 它的列名不可知, 你可以这么写(比如执行的是一个"select count(id) from table"的话):
int result = 0
if (rs.next) {
result = rs.getInt(1);
}
这么写呗:
int result = 0;
Statement stmt = null;
ResultSet rs = null;
String query = "select 列名 from 表名 where id=11 and fname='xx' order by 列名 desc limit 1";
try {
stmt = conn.createStatement();
rs = stmt.executeQuery(query);
if (rs.next()) {
result = rs.getInt(1);
// 或者 result = rs.getInt("列名");
}
} catch (Exception e) {
e.printStackTrace();
}
return result;

首先要保证你数据库表的结构是可以转化数字的,如果是数字的直接取,如果不是数字的,拿出来后要先造型才可以使用,至于语句实现
JDBC:
rs.getInt("fieldName");数据库结构为数值型
Integer.parseInt(rs.getString(("fieldName"));数据库结构为varcher2类似的类型

同意一楼所说的,放在ResultSet集里。
楼主应该明确问题。