C++ 如何在like查询中使用sqlite icu
您好,我将我的sql语句修改为C++ 如何在like查询中使用sqlite icu,c++,sqlite,C++,Sqlite,您好,我将我的sql语句修改为 CREATE VIRTUAL TABLE [v_fts] USING fts4 ( [title], tokenize=icu )" 但是当我试图插入数据时,我得到了错误SQL逻辑错误或缺少数据库 编辑 我使用-DSQLITE\u ENABLE\u icu 选择权 如何装载icu 我在这里上传了带有makefile的shell代码 根据需要,您应该使用tokenize=icu en_US例如(指定icu区域设置标识符) 此外,您应该加载ICU。您应该加
CREATE VIRTUAL TABLE [v_fts] USING fts4
(
[title],
tokenize=icu
)"
但是当我试图插入数据时,我得到了错误SQL逻辑错误或缺少数据库
编辑
我使用-DSQLITE\u ENABLE\u icu
选择权
如何装载icu
我在这里上传了带有makefile的shell代码
根据需要,您应该使用tokenize=icu en_US
例如(指定icu区域设置标识符)
此外,您应该加载ICU。您应该加载ICU。对不起,我没听清楚?如何做到这一点?我添加了使用icu编译sqlite所遵循的步骤。现在如何在sqlite内部程序中加载icu?我正在使用sqlite的icu扩展。如果libicu可用并且可以由sqlite加载,那么它应该可以工作。我已经在make文件中添加了完整的代码zip文件,请检查一下。
all: 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 $<
CREATE VIRTUAL TABLE [vivek_fts] USING fts4 ( [title],tokenize=icu en_US)
insert into vivek_fts values("a");