Java的ResultSet中,使用MAX SQL函数(java ResultSet, using

2019-08-17 10:27发布

你好这里是我想要的,我连接到一个数据库和检索唯一ID列的最大元素,并将其分配给名为maxID一个整型变量,这里是我的方法:

int maxID = 0;
Statement s2 = con.createStatement();
s2.execute("SELECT MAX(UniqueId) FROM MyTable");    
ResultSet rs2 = s2.getResultSet(); // 
while ( rs2.next() ){
  maxID = rs2.getInt(0);
}

什么是解决这个体面的方式,它通过使用“rs2.next()”,而循环感觉就像一个非常粗暴的方式。

谢谢

Answer 1:

if (rs2.next()) {
  maxID = rs2.getInt(1);
}


Answer 2:

鲍里斯·帕夫洛维奇是差不多吧。

if (rs2.next()) {
  maxID = rs2.getInt(1);
}

结果集中列是基于1的。 而对于使用的原因if不是while的是,你只执行查询返回单行。



Answer 3:

的.next()是从“无处”重新定位光标到行(如有)。

如果你喜欢,你可以测试它,它是值得推荐的,虽然你做的,所以无法逃脱while循环。 但如果你是肯定的查询只会返回一个单行,你可以这样做

if (rs.next()) {
   maxID = rs2.getInt(1);
}


文章来源: java ResultSet, using MAX sql function