c++ - 使用 SQlite3 C 库进行全文搜索,字符 "-"不起作用

标签 c++ sqlite wxwidgets

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

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

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

最佳答案

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

启用 enhanced query syntax ,使用 SQLITE_ENABLE_FTS3_PARENTHESIS 进行编译宏。

关于c++ - 使用 SQlite3 C 库进行全文搜索,字符 "-"不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13132921/

相关文章:

c++ - 使用 openCV 在图像中查找 "Missing"对象

C++ 错误 : referenced in function _main when reading a file

C++ - 派生类 - 错误 : expected primary expression before'int'

c++ - 将矩阵复制到 C++ 中指针指向的位置

c# - SQLite插入覆盖记录

sql - 如果有不同的方法可以完成相同的任务,我该如何选择最佳的 SQL 查询?

SQLite:循环 SELECT 语句,替换 WHERE 子句

windows - Windows 事件是顺序处理还是并行处理?

c++ - .NET 编码。wxWIdgets 中的默认替代方案?

c++ - 如何在单独的线程中创建多个任务?