2

所以我一直在环顾四周,但似乎无法找到一个看似简单且可能是常见问题的答案。在 SQLite 中,我有一个要通过用户定义的搜索文本传递的查询。

search = xChatMessageSplit[2]

c.execute("SELECT * FROM captured WHERE Nick=? AND Name LIKE '%search%'",(xChatNick,search))

显然语法或任何不正确的东西,因为我遇到了错误,但我想基本上允许用户为字符串定义一个搜索词“搜索”。我该怎么做呢?我尝试使用 REGEXP 但我似乎无法弄清楚如何定义函数所以我想我会选择 LIKE 因为它已经实现到 SQLite3

4

1 回答 1

5

您需要使用?来显示参数值的使用位置。

c.execute("""SELECT * FROM captured
             WHERE Nick=?
             AND Name LIKE ('%' || ? || '%')""", (xChatNick,search))
于 2012-07-12T21:08:00.890 回答