我正在使用Java包裝來訪問Sqlite,但我認爲這是一個普通的Sqlite問題。Sqlite:如何在準備好的語句中將變量插入到字符串中
String stmt = "SELECT foo FROM bah WHERE foo='%/?/%';
PreparedStatement a = myConn.prepareStatement(stmt);
a.setString(1, "hello");
a.executeQuery();
...拋出一個異常 - 它不喜歡?在引號內。一切都很好,如果我做
...WHERE foo=?
但這不是我想要的聲明。
如何將變量插入此準備好的語句中?如果您忘記了我正在使用Sqlite的事實,那麼如何使用其他數據庫技術來完成這項工作?
不知道答案了我的頭頂部,但你有沒有嘗試做了setString(1,「%/你好%」)?你可能不得不闖入你的輸入字符串來包圍它w% – 2010-03-04 13:58:22
我想我可以做 ...哪裏foo =? 和 a.setString(1,「\'%/ hello%/ \'」); 作爲最後的手段。 – 2010-03-04 14:00:03
在我看到您的建議SB之前發佈了我的評論 - 謝謝。我可以這樣做,但我仍然想知道是否有更好的方法! – 2010-03-04 14:01:16