关于sql cannot be resolved的问题,急等!!!

meinvxixi 2010-07-20 11:02:07
我要在JSP页面中对一个数据库表进行查询操作,我在DAO中写的是:
mport java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import com.rzyh.qdfh.javabean.SAV_ALL;
import com.rzyh.qdfh.util.DBUtils;

public List<SAV_ALL> getSAV_ALLList(String acno,String cunm){ //查询sav_all表
DBUtils db=new DBUtils();
ResultSet rs=null;
List<SAV_ALL> list=new ArrayList<SAV_ALL>();
if(acno==null&&cunm==null){
String sql="select * from SAV_ALL";
}
else if(acno!=null&&cunm==null){
String sql="select * from SAV_ALL where SAV_ALL.ACNO="+acno;
}
else if(acno==null&&cunm!=null){
String sql="select * from SAV_ALL where SAV_ALL.CUNM="+cunm;
}
else{
String sql="select * from SAV_ALL where SAV_ALL.CUNM like'%"+cunm+"%' and SAV_ALL.ACNO="+acno;
}
// String sql = request.getParameter("sql");
try{
rs=db.executeQuery(sql);
while(rs.next()){
SAV_ALL sav_all=new SAV_ALL();
sav_all.setACNO(rs.getString("acno")==null?"":rs.getString("acno").trim());
sav_all.setRCTL(rs.getString("rctl")==null?"":rs.getString("rctl").trim());
sav_all.setCUNM(rs.getString("cunm")==null?"":rs.getString("cunm").trim());
sav_all.setACBL(rs.getFloat("acbl"));
sav_all.setRJYE(rs.getFloat("rjye"));
list.add(sav_all);
}
}catch (Exception e){
e.printStackTrace();
}finally{
db.closeConnection();
}
return list;
}
}
ACNO,CUNM是表中要根据其查询的两个字段。我在DBUtils中也定义了executeQuery(sql)方法:
public ResultSet executeQuery(String sqlStr){
try{
this.getConnection();
this.stmt=this.conn.createStatement();
rs=stmt.executeQuery(sqlStr);
}catch(SQLException e){
e.printStackTrace();
}
return this.rs;
}

现在的问题是出现了sql cannot be resolved的错误

java.lang.Error: Unresolved compilation problem:
sql cannot be resolved

com.rzyh.qdfh.dao.SAV_ALLDAO.getSAV_ALLList(SAV_ALLDAO.java:32)
com.rzyh.qdfh.servlet.SAV_ALLServlet.doPost(SAV_ALLServlet.java:88)
com.rzyh.qdfh.servlet.SAV_ALLServlet.doGet(SAV_ALLServlet.java:45)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
我不知道问题在哪,请各位高手帮忙解答,拜托说的详细点,万分感谢!!
...全文
4145 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
falconkabu 2010-07-21
  • 打赏
  • 举报
回复
如2楼所说定义在ResultSet rs=null;
后面即可
falconkabu 2010-07-21
  • 打赏
  • 举报
回复
sql作用域只在if判断中必须定义在外层作用域
闭目鱼 2010-07-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 weipj001 的回复:]
找不到sql这个变量,在ResultSet rs=null;
后面定义String sql="";
[/Quote]
[Quote=引用 3 楼 weipj001 的回复:]
你写的方法编绎都不能通过。
[/Quote]

三楼的很细心
weipj007 2010-07-20
  • 打赏
  • 举报
回复
找不到sql这个变量,在ResultSet rs=null;
后面定义String sql="";
weipj007 2010-07-20
  • 打赏
  • 举报
回复
你写的方法编绎都不能通过。
stalendp 2010-07-20
  • 打赏
  • 举报
回复
把sql打出来看看。like 后面有没有空格
闭目鱼 2010-07-20
  • 打赏
  • 举报
回复
遇到这些问题最好设断点调试一下
我估计是返回ResultSet 方法这里有错

81,092

社区成员

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

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