在sqlite3(FTS4)中使用全文搜索中的特殊字符

时间:2012-06-11 12:48:49

标签: c sqlite full-text-search

我在Linux上使用sqlite3通过C库(如果重要的话)进行全文搜索,并且有问题的数据库是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的文件名。

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

使用\没有帮助,所以如何在匹配查询中转义这些字符以使用它们?

0 个答案:

没有答案