Dawn_Azalea 2016-12-17 07:19 采纳率: 33.3%
浏览 842
已采纳

sqlsever_myeclipse分页问题

List<Book> list = new ArrayList<Book>();
Connection con = DBConnection.getCon();
//String sql = "select top ? * from bookInformation where id not in (select top ? id from bookInformation)";
//String sql = "select top 9 *  from bookInformation "; 
String sql = "select top + Book.PAGE_SIZE  from bookInformation where id not in (select top  (page-1)*Book.PAGE_SIZE  id from bookInformation)";

try{
    PreparedStatement stmt = con.prepareStatement(sql);                 
    stmt.setInt(1,Book.PAGE_SIZE);     //设置查询数据所返回的记录数
    stmt.setInt(2,(page-1)*Book.PAGE_SIZE);   //设置查询记录的开始位置


    ResultSet rst  = stmt.executeQuery();

上面是代码,出现了索引超出范围的错误。请大家帮我解决一下?非常感谢

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-12-17 07:46
    关注
     String sql = "select top + Book.PAGE_SIZE  from bookInformation where id not in (select top  (page-1)*Book.PAGE_SIZE  id from bookInformation)";
    
    ->
    String sql = "select top " + Book.PAGE_SIZE + "  from bookInformation where id not in (select top " + (page-1)*Book.PAGE_SIZE + " id from bookInformation)";
    
    stmt.setInt(1,Book.PAGE_SIZE);     //设置查询数据所返回的记录数
    stmt.setInt(2,(page-1)*Book.PAGE_SIZE);   //设置查询记录的开始位置
    删除
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?