java - 在java中处理 boolean 结果集

标签 java boolean resultset

我有一个返回字符串值的查询,我的查询是

选择情况当(从packing_spec_uses_pack p,style_pack sp中选择计数(不同的style_packing_spec_id),其中sp.style_pack_id = p.style_pack_id和sp.style_id = 1701)!=(从style_packing_spec中选择计数(不同的style_packing_spec_id),其中style_id = 1701) then 'DonotProceed' else 'Proceed' end "; 结果如下

 ?case?
----------
 DonotProceed

如何在java中执行这个,如何处理这个结果集,我尝试过这样

String sql="query";
ResultSet rs=stmt.executeQuery(sql);

它返回空指针异常 String str=rs.getString(1);

最佳答案

我从来没有从查询中返回过 boolean 值(Oracle 不这样做...),但我认为它可以工作。您只需转到结果集的第一行,列索引从 1(而不是 0)开始。

ResultSet rs=stmt.executeQuery(sql);
try{
  rs.next();                // move to the first row
  return rs.getBoolean(1);  // first column is 1
}
finally{
  rs.close();
}

更新:

It shows type mismatch error cannot convert from boolean to Boolean

您使用的是 Java 1.4 吗?对于 Java5 及更高版本,这应该通过自动装箱来解决。但您也可以通过使用原始 boolean 变量来匹配 JDBC 返回的内容来修复它:

boolean str = rs.getBoolean(1); // I question the variable name, though

关于java - 在java中处理 boolean 结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3801122/

相关文章:

java - 将 Java Mission Control 连接到 Wildfly 16

java - 如何验证使用 Spring SFTP 下载的文件的校验和

java - 不断检查 Java 中的变化?

java - Android 10 - 使用 PackageManager 安装新版本的 apk 而不是 Intents 并没有真正起作用

java - Openfileinput 返回空指针异常

python - Pandas :如果变量为真,则返回特征名称

javascript - 如何从 Javascript 中的连续函数返回 boolean 值?

java - ResultSet.getString(1) 抛出 java.sql.SQLException : Invalid operation at current cursor position

java - 如何获取结果集中的列表?

java - 从 MSSQL NVarchar 列中检索阿拉伯语文本