急!用prepareStatement处理含limit的SQL语句出错!

dddeee 2004-11-21 10:42:58
JDK1.4.2 + MYSQL 4.1

String sqlStr = "select * from table limit ?,?;";
conn.prepareStatement(sqlStr);
conn.setInt(1,0);
conn.setInt(2,20);
ResultSet rs = conn.executeQuery();

出错。错误提示在?,?后面有语法错误。

我试了好久,不论怎么都不行,好像limit后面不能加?号,只能加常量似的!

急盼解决!
...全文
150 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tom2005 2004-12-08
  • 打赏
  • 举报
回复
这样估计不可以
prep.setInt(1,0);
一般为字段符值

用变量吧
"select * from table limit "+变量1+","+变量2+";";
dddeee 2004-12-08
  • 打赏
  • 举报
回复
up
dddeee 2004-11-22
  • 打赏
  • 举报
回复
to haroyy(天平) :
直接用"select * from table limit 0,20;"是可以的!

to johnsmiths(银狐):
我的就是这样写的,只是简化了一下。
johnsmiths 2004-11-21
  • 打赏
  • 举报
回复
String sqlStr = "select * from table limit ?,?;";
PreparedStatement prep=null;
prep=conn.prepareStatement(sqlStr);
prep.setInt(1,0);
prep.setInt(2,20);
ResultSet rs = conn.executeQuery();
haroyy 2004-11-21
  • 打赏
  • 举报
回复
你试试直接用"select * from table limit 0,20;"
如果不行就是jdbc不支持了

81,092

社区成员

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

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