"中的SQL语法错误插入'(a,b,c,d,e)值(?,?,?,?,?)"

时间:2015-06-19 00:45:22

标签: java mysql jdbc

select (case when date = curdate() then 'today'
             when date >= curdate() - interval 6 day then 'last 7 days'
             when date >= curdate() - interval 29 day then 'last 30 days'
             else 'older'
        end),
       count(*),
       . . .
from . . .
group by (case when date = curdate() then 'today'
               when date >= curdate() - interval 6 day then 'last 7 days'
               when date >= curdate() - interval 29 day then 'last 30 days'
               else 'older'
          end)
    String requiredKeyword = request.getParameter("KeyWord");
    String textBookCode = request.getParameter("BookCode");
    String pageNumbers= request.getParameter("PageNumbers");
    String definition = request.getParameter("Definition");


    PrintWriter show = response.getWriter();

    try 
    {
        Class.forName("com.mysql.jdbc.Driver");

        Connection dbConnection=DriverManager.getConnection("jdbc:mysql://localhost:3306/main_data","root","");
        System.out.println(" Connection Created Successfully ");

        PreparedStatement prepSt =(PreparedStatement) dbConnection.prepareStatement(" insert into 'keys'(requiredKeyword,noOfPages,textBookCode,pageNumbers,definition) values(?,?,?,?,?) ");
        System.out.println(" Statement Prepared ");

        int num=1,i=0;

        prepSt.setString(1,requiredKeyword);
        prepSt.setInt(2,num);
        prepSt.setString(3,textBookCode);
        prepSt.setString(4,pageNumbers);
        prepSt.setString(5,definition);
        try
        {
            i= prepSt.executeUpdate();
            System.out.println(" Executed ");
        }
        catch(Exception e)
        {
            show.println(e);
        }

        if(i>0)
            show.println(" Inserted Successfully ");

        dbConnection.close();

    }
    catch (Exception e) 
    {
        show.print(e);
    }

1 个答案:

答案 0 :(得分:0)

您使用标准引号而不是反引号来转义MySql保留字KEYS。将表名更改为任何非保留字,以便可以删除引号。