添加用户的问题

hello_xuzeng 2013-11-27 10:13:42
如题,不知道为什么flag的值无论何时都不为1
public int insert(ManagerForm managerForm){
String sql1 = "select * from manager where name='"+managerForm.getName()+"'";
ResultSet rs =conn.executeQuery(sql1);//调用ConnDB中的executeQuery方法执行查询
String sql="";
int flag = 0;
try {
if(rs.next()){//判断结果是不为空
flag = 2;//表示该管理员已存在
}
else{
sql = "insert into manager (name,pwd,sex,email) values ('"+managerForm.getName()+"','"+managerForm.getPwd()+"','"+managerForm.getSex()+"','"+managerForm.getEmail()+"')";
flag=conn.executeUpdate(sql);//调用公共模块的更新方法 //如果改为conn.executeUpdate(sql);flag=1;flag返回值又一直是1
}
} catch (SQLException e) {
// TODO Auto-generated catch block
flag = 0;
e.printStackTrace();
}
finally{
conn.close();
}
return flag;

}
...全文
254 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
teemai 2013-11-27
  • 打赏
  • 举报
回复
引用 2 楼 xuzeng123 的回复:
[quote=引用 1 楼 huxiweng 的回复:] flag=conn.executeUpdate(sql);//调用公共模块的更新方法 这里conn.executeUpdate(sql)插入一条数据成功返回1.一直成功就一直是1
但我有用if判断啊,怎么会一直执行else里的,flag=conn.executeUpdate(sql)和conn.executeUpdate(sql);flag=1有什么区别吗[/quote] 你红色的引用我就看这里了。你还是debug一下吧。另外改成if(rs.hasNext()){//判断结果是不为空
hello_xuzeng 2013-11-27
  • 打赏
  • 举报
回复
引用 1 楼 huxiweng 的回复:
flag=conn.executeUpdate(sql);//调用公共模块的更新方法 这里conn.executeUpdate(sql)插入一条数据成功返回1.一直成功就一直是1
但我有用if判断啊,怎么会一直执行else里的,flag=conn.executeUpdate(sql)和conn.executeUpdate(sql);flag=1有什么区别吗
teemai 2013-11-27
  • 打赏
  • 举报
回复
flag=conn.executeUpdate(sql);//调用公共模块的更新方法 这里conn.executeUpdate(sql)插入一条数据成功返回1.一直成功就一直是1

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧