【问题标题】:Java MySQLSyntaxErrorJava MySQL语法错误
【发布时间】:2016-03-04 19:20:39
【问题描述】:

我正在使用 JDBC 驱动程序围绕 MySQL 数据库构建一个程序。 我被困在这一点上。

loginWindow lW = new loginWindow();
try {
   PreparedStatement pst = connHandler.conn.prepareStatement("SELECT * FROM   '" + lW.fieldUname.getText() + "''");             


   ResultSet rs = pst.executeQuery();
   table.setModel(DbUtils.resultSetToTableModel(rs));

    } catch (SQLException e) {

      e.printStackTrace();
}   

我有一个 connHandler 类,它保存着连接方法和 Connection(命名为:“conn”)变量。我假设我的查询有一些问题。

我得到的错误:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 
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

非常感谢任何帮助或建议。

【问题讨论】:

    标签: java mysql jdbc


    【解决方案1】:

    使用它

     "SELECT * FROM '" + lW.fieldUname.getText() + " ' "
    

    最后有两个“'”

    【讨论】:

    • 对于mysql我建议使用`而不是'
    • 我刚刚修改了他的sql语句,他可以随意使用。
    • @Lashane 我同意你的观点,他应该使用`(反引号)将字符串包装在sql语句中。
    • "SELECT * FROM " + lW.fieldUname.getText() + " " 就像一个魅力 :) 谢谢!
    【解决方案2】:

    嗯,我搞定了。在

    的帮助下

    卡恩·耶尔马兹

    拉沙内

    "SELECT * FROM `" + lW.fieldUname.getText() + " ` "
    

    所以,我使用了 ` 而不是 '。

    谢谢。 :)

    【讨论】:

      猜你喜欢
      • 2015-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-23
      • 1970-01-01
      • 1970-01-01
      • 2010-12-04
      相关资源
      最近更新 更多