簡體   English   中英

使用Prepared語句為JQuery JTable選擇值

[英]Using Prepared Statement to select values for JQuery JTable

我正在根據Java Servlet處理的Jquery JTable的搜索查詢字符串選擇值。 我收到過濾器以及startPageIndex和recordPageIndex的請求參數。 但是有一個Mysql錯誤。 請查看下面的代碼/錯誤。

根據頁面選擇列

  if(filter != null && !filter.trim().equals("")){
        query = "SELECT C1, C2, C3, C4, C5"
                + "FROM DEPARTMENTS "
                + "WHERE  C2= ? OR C3= ? OR C4= ? OR C5= ? "
                + "ORDER BY department ASC  LIMIT "
                + "? ,  ? ";              

        // the last two values used for table pagination

        pStmt = dbConnection.prepareStatement(query);

        pStmt.setString(1, filter.trim());
        pStmt.setString(2, filter.trim());
        pStmt.setString(3, filter.trim());
        pStmt.setString(4, filter.trim());
        pStmt.setInt(5, startPageIndex);
        pStmt.setInt(6, recordsPerPage);

        ResultSet rs = pStmt.executeQuery(query);
        System.out.println("query executed " + query);

          while (rs.next()) {
                   // Stores in List used to populate in Jquery JTable
          }
    }

MySQL錯誤:

您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊,以獲取在'?附近使用的正確語法。 或C3 =? 或C4 =? 或C5 =? 第1行的C3 ASC命令

在select子句中,在FROM之前或C5之后添加空間:

query = "SELECT C1, C2, C3, C4, C5 "
        + "FROM DEPARTMENTS "
        + "WHERE C2 = ? OR C3 = ? OR C4 = ? OR C5 = ? "
        + "ORDER BY department ASC LIMIT ?, ?";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM