2

我有一个使用 FTS3 的 SQLite3 数据库。它在 SQLite3 命令行工具中运行良好,但是在使用 C 库时(使用 wxSQLite3,但我猜这应该没有区别),它不适用于包含“-”字符的查询,例如 SELECT * From Table WHERE columnx MATCH 'text1 -text2 '。但是,这在命令行版本上运行良好。

我不知道为什么它不起作用。我尝试过的所有其他 FTS 匹配条件都可以正常工作。

注意:我已将 wxWidgets 添加到标签而不是 wxSQLite3,因为我无法创建新标签

4

1 回答 1

2

显然,您的数据库在标准/增强查询语法方面的配置不同;试试WHERE columnx MATCH 'text1 NOT text2'

要启用增强的查询语法,请使用SQLITE_ENABLE_FTS3_PARENTHESIS宏进行编译。

于 2012-10-30T08:25:45.837 回答