MySQLSyntaxErrorException:'where子句'中的未知列'John'

时间:2017-03-02 17:46:25

标签: mysql jdbc

我正在尝试根据存储在skw文本框中的关键字检索记录,当我通过USN或Age时,它会给出正确的结果,但它不能使用Name。它抛出错误:'strong子句'中的 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExceptionUnknown列'NAME_KEYWORD(skw)'

ResultSet res=stmt.executeQuery("select * from Student where USN="+skw.getText()+" or Name='"+skw.getText()+"' or Age="+skw.getText()+"");

1 个答案:

答案 0 :(得分:1)

如果您选择文本,则应使用单引号包装文本值

ResultSet res=stmt.executeQuery("select * from Student where USN='"
    +skw.getText()+"' or Name='"+skw.getText()+"' or Age='"+skw.getText()+"'");

否则生成的文本用作列名