iOS FMDB集成了FTS功能,并且支持icu。icu是sqlite3里支持中文分詞的分詞器。
unknown tokenizer: fmdb是因?yàn)閯?chuàng)建數(shù)據(jù)表,插入數(shù)據(jù)表,還有查詢(xún)數(shù)據(jù)表時(shí)候沒(méi)有裝載FMDB的分詞器。

圖1創(chuàng)建表
創(chuàng)建表之前必須調(diào)用注冊(cè)分詞器,裝載分詞器

圖2分詞器
插入數(shù)據(jù)之前也必須裝載分詞器

圖3插入數(shù)據(jù)
查詢(xún)數(shù)據(jù)語(yǔ)句之前也必須裝載分詞器

圖4查詢(xún)數(shù)據(jù)
? ? 總結(jié):用fmdb之前我一直想用sqlite3自帶的icu分詞器,但是沒(méi)有成功,一直提示unknown tokenizer: icu錯(cuò)誤。后來(lái)用fmdb分詞器,但是只在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)候加載分詞器,所以不管插入數(shù)據(jù)還是查詢(xún)數(shù)據(jù)都提示unknown tokenizer: fmdb錯(cuò)誤。因此需要在封裝好的每條語(yǔ)句前裝載分詞器。