Jamie_pro 2017-11-11 02:17 采纳率: 0%
浏览 875

课程设计中遇到的问题,急求大佬解答

做一个查询数据库的功能,表tellist中分别有name,sex,age,tel,mail,adr字段,查询页面有一个下拉框,是按哪个字段查询,一个表单输入查询内容,代码如下:
public String Query(HttpServletRequest request){
String html="";
String sql="select * from tellist";
String type=request.getParameter("type");
String content=request.getParameter("content");
if(type.equals("name"))
sql+="where name=?";
if(type.equals("sex"))
sql+="where sex=?";
if(type.equals("age"))
sql+="where age=?";
if(type.equals("tel"))
sql+="where tel=?";
if(type.equals("mail"))
sql+="where mail=?";
if(type.equals("adr"))
sql+="where adr=?";
try{
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1,content);
ResultSet rs1=pstmt.executeQuery(sql);
html+="

";
html+="";
while(rs1.next()){
html+="";

html+="";

html+="";
html+="";
html+="";

html+="";

html+="";

html+="";

}
html+="
姓名 性别 年龄 电话 邮箱 住址
";
html+=rs1.getString("name");
html+="
";
html+=rs1.getString("sex");
html+="
";
html+=rs1.getString("age");
html+="
";
html+=rs1.getString("tel");
html+="
";
html+=rs1.getString("mail");
html+="
";
html+=rs1.getString("adr");
html+="
";
}
catch(Exception e){
e.printStackTrace();
}
return html;
 }
 总报错,如下:
 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=?' at line 1

;但是我没发现我的SQL语句有错啊,求大神解答!

  • 写回答

5条回答

  • 子幽 2017-11-11 02:39
    关注

    没学过Java,不过你这报错是 =?这个?是什么鬼,Java的写法吗

    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集