如何在类似查询中使用sqlite icu
How to use sqlite icu in like query
嗨,我修改了我的sql语句
CREATE VIRTUAL TABLE [v_fts] USING fts4
(
[title],
tokenize=icu
)"
但是当我试图插入数据时,我得到错误SQL logic error or missing database
编辑
我已经编译了sqlite与icu选项使用- DSQLITE_ENABLE_ICU
选项。
如何加载icu ?
我已经上传了shell代码与makefile在这里
http://www.2shared.com/file/8hxA3KIn/sqlite.htmlall: release32
CFLAGS = -fPIC -O6 -DNO_TCL -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3=1 -O3 -Os -I. -DSQLITE_ENABLE_ICU `/home/vivek/downloads/icu/des32/bin/icu-config --cppflags`
export LDFLAGS += -Wl,--start-group
export LDFLAGS += /home/vivek/downloads/icu/des32/lib/libsicui18n.a
export LDFLAGS += /home/vivek/downloads/icu/des32/lib/libsicuuc.a
export LDFLAGS += /home/vivek/downloads/icu/des32/lib/libsicudata.a
export LDFLAGS += -lcrypt -ldl -lz -lrt -lssl -lpthread
export LDFLAGS += -Wl,--end-group
OBJ=sqlite3.o
shell.o
icu.o
release32: $(OBJ)
g++34 -fno-exceptions -fno-operator-names ${CFLAGS} -DNDEBUG -m32 -static $(OBJ) $(LDFLAGS) -o s.out
%.o:%.c
gcc34 ${CFLAGS} -DNDEBUG -m32 -c $<
my query are
CREATE VIRTUAL TABLE [vivek_fts] USING fts4 ( [title],tokenize=icu en_US)
insert into vivek_fts values("a");
根据全文搜索文档,您应该使用tokenize=icu en_US
为例(指定ICU地区标识符)。
还应该加载ICU
相关文章:
- 查询SQLite数据库中的日期
- 带内存和隔离功能的SQLite
- Qt SQLite没有查询或参数计数不匹配
- Qt SQlite无法创建表
- 数数并选择 sqlite 中的前三名
- 如何使用SQLite将数据库中的值导出为C / C++中的字符串或字符?
- 如何在 Linux for Windows 上通过 MinGW 构建静态 ICU 的 Boost
- 如何使用SQLite在qt中创建表?
- 使用 cl 构建代码并连接到 sqlite 库
- 连接到 URL Sqlite 数据库C++
- protobuf C++ SQLite handle blob data
- 损坏的结构字符数组 - sqlite C++
- 使用 SQlite 在 QT5 上关闭和打开数据库时出错
- 在SQLITE数据库中写入记录需要花费大量时间.如何提高刀片操作效率?
- 检测 ICU 库在 VS2017 中失败
- 如何调整ICU的UnicodeString::caseCompare(或获得相同的效果)
- SqLite c++,可以创建数据库,但不能将 anthing 插入到表中
- 如何使用C ++将SQLite数据库中的所有表从一个数据库复制到另一个数据库
- 将ICU作为静态库合并到sqlite.dll中
- 如何在类似查询中使用sqlite icu