SELECT 语句 returns 在 iOS 8.2 上没有结果(SQL 3.8.4)
SELECT statement returns no results on iOS 8.2 (SQL 3.8.4)
下面的 SELECT 语句在 iOS 8.1 和之前的版本上工作得很好。现在,在我使用 iOS 8.2 更新的设备上,它只是 returns 没有结果,没有任何错误。我发现 iOS 8.2 将 SQLite 版本从 3.7.13 更新到 3.8.4。这似乎是问题所在,因为我没有更改任何其他内容。
SELECT * FROM allLanguages WHERE allLanguages MATCH '*searchString*' (doesn't work --> no results)
我试了一下,问题似乎出在 'prefixed' 通配符 * 上。删除此 returns 结果。
SELECT * FROM allLanguages WHERE allLanguages MATCH 'searchString*' (works)
SELECT * FROM allLanguages WHERE allLanguages MATCH '*searchString' (doesn't work --> no results)
SELECT * FROM allLanguages WHERE allLanguages MATCH '*searchString*' (doesn't work --> no results)
有人知道这里的问题是什么吗? SELECT 语句是否可以替换为在 SQL 3.8.4 下工作的不同语句?
非常感谢!
经过一些研究后,在 '"*searchString*"' 周围加上双引号对我有用。无法解释原因,但它有效 ;)
SELECT * FROM allLanguages WHERE allLanguages MATCH '"*searchString*"'
下面的 SELECT 语句在 iOS 8.1 和之前的版本上工作得很好。现在,在我使用 iOS 8.2 更新的设备上,它只是 returns 没有结果,没有任何错误。我发现 iOS 8.2 将 SQLite 版本从 3.7.13 更新到 3.8.4。这似乎是问题所在,因为我没有更改任何其他内容。
SELECT * FROM allLanguages WHERE allLanguages MATCH '*searchString*' (doesn't work --> no results)
我试了一下,问题似乎出在 'prefixed' 通配符 * 上。删除此 returns 结果。
SELECT * FROM allLanguages WHERE allLanguages MATCH 'searchString*' (works)
SELECT * FROM allLanguages WHERE allLanguages MATCH '*searchString' (doesn't work --> no results)
SELECT * FROM allLanguages WHERE allLanguages MATCH '*searchString*' (doesn't work --> no results)
有人知道这里的问题是什么吗? SELECT 语句是否可以替换为在 SQL 3.8.4 下工作的不同语句?
非常感谢!
经过一些研究后,在 '"*searchString*"' 周围加上双引号对我有用。无法解释原因,但它有效 ;)
SELECT * FROM allLanguages WHERE allLanguages MATCH '"*searchString*"'