【发布时间】:2015-02-20 00:56:23
【问题描述】:
我正在尝试在我的程序中使用 WHERE LIKE 命令。
我的代码
String searchCriteria = searchTextField.getText();
String searchCriteria1 ="'"+"%" + searchCriteria + "%"+"'";\
String query = "select ID,Priority,recipient,Sender,Label,Subject from Messages where Message like = '" + searchCriteria1 + "'";
PreparedStatement pst = connection.prepareStatement(query);
ResultSet rs = pst.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(rs));
代码解释
1.这段代码是从用户那里得到输入的。
2.创建一个包含搜索条件和条件两侧的“%”的字符串变量。
3.最后几行执行SQL查询。
我目前收到错误 java.sql.SQLSyntaxErrorException: Syntax error: Encountered "=" at line 1, column 92. 并且不确定我的陈述有什么问题。
最有可能是很傻很渺小的东西,希望能帮到你。
谢谢
【问题讨论】:
-
是的,这是一件愚蠢而渺小的事情。提示:在调用
prepareStatement之前打印出query。 -
你有一个 SQL 注入漏洞。