4

我通过 C 库(如果重要)在 Linux 上使用 sqlite3 进行全文搜索,并且有问题的数据库是FTS4

我将一些文件名存储在数据库中,然后将它们搜索为:

SELECT file_name FROM leTable WHERE file_name MATCH 'le name'

到目前为止还不错,但是当我想搜索时

SELECT file_name FROM fs_index WHERE file_name MATCH 'le-name'
SELECT file_name FROM fs_index WHERE file_name MATCH 'le[name]'

然后它失败了,因为 sqlite 将-其视为特殊字符,它给了我文件名,包括le但不包括name.

[当我使用字符或]匹配查询时会发生类似的事情。

使用\没有帮助,所以我怎样才能转义这些字符以在匹配查询中使用它们?

4

0 回答 0