为了账号安全,请及时绑定邮箱和手机立即绑定

本人技术渣,写成现在这样,这个问题困扰了我好几个小时了,各位大神,看看是哪里出错了

本人技术渣,写成现在这样,这个问题困扰了我好几个小时了,各位大神,看看是哪里出错了

狐的传说 2023-01-03 15:11:04

代码如下:
public int voteUser(voteUser vv) throws SQLException// 在表voteUser中查找该用户是否在 某一voteid中已投过票
{
getConnection db=new getConnection();
String sql="select * from voteUser where voteId='"+vv.getVoteId()+"' and userName='"+vv.getUserName()+"'";
System.out.println(sql);

int aa=0;

ResultSet ss=db.select(sql);
ss.last();
if(ss.getRow()==0)
{
aa=1;
System.out.println("voteDaozhong 该用户名是否存在"+aa);
}
else
{
aa=0;
System.out.println("voteDaozhong 该用户名是否存在"+aa);
}
db.close();
return aa;

}

getConnection 128行附近代码如下
public ResultSet select(String sql) {
ResultSet rs = null;
try {
rs=st.executeQuery(sql);

} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}

错误提示如下:

这个函数的目的是查看数据库表中是否存在相应的记录, 入股存在则返回1,不存在则返回0






查看完整描述

2 回答

?
炎炎设计

TA贡献1559条经验 获得超3个赞

ResultSet的next方法就可以判断出来了
while( rs.next() ){
//如果有数据就可以取数据了
}
因为用java.sql.Statement的executequery()方法查询的结果集永远不会返回null,可以用rs.next()方法来判断有没结果集

查看完整回答
反对 回复 2023-01-06
?
弑天下

TA贡献1529条经验 获得超7个赞

if(ss != null){  while(rs.next()){  // 如果确定不会超过一条,这里可以改成if    // 查询有返回记录  }}

查看完整回答
反对 回复 2023-01-06

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信