请教一个插入语句的错误

弼马温 2011-08-28 08:58:21
我是用java jdbc连接mysql。
sql语句是这样的 "insert into yonghu (name, pass) values (?,?);"
然后在PreparedStatement中给问号赋值。
psmt.setString(1,tmp.getName());
psmt.setString(2,tmp.getPass());
tmp.getName()和tmp.getPass()都能在控制台打印,是有值的。
但是执行“res = psmt.executeUpdate(sql);”的时候出现错误


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


困惑啊,求高人解答
...全文
52 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
成长grown 2011-08-28
  • 打赏
  • 举报
回复
LZ使用的是preparedStatement,那参sql语句应该是给在preparedStatement的参数里的。“res = psmt.executeUpdate(sql)”,这里就不用sql语句了吧。。。。
弼马温 2011-08-28
  • 打赏
  • 举报
回复
我也觉得是这个原因,但是替换问号不是用setString这个方法么?以前用都好使的啊!
ACMAIN_CHM 2011-08-28
  • 打赏
  • 举报
回复
显然你的语句参数并没有加入成功,提交到MYSQL中的SQL语句仍然是 "insert into yonghu (name, pass) values (?,?);"
建议检查你的java 程序。 可以到JAVA版中咨询一下。

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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