在VS中调试win32版时,使用WAL模式并没有太多问题,但在安卓中有时会报错WAL启动失败,通常第一次启动安卓程序会成功,但之后再启动会报错。
解决方案参考:http://www.john3.cn/2018/11/21/diary/d20181121/
加个判断,如果启动WAL失败就不启动好了。
char* err_msg = NULL;
if (sqlite3_exec(dataBaseConnect, "PRAGMA journal_mode=WAL;", NULL, NULL, &err_msg) != SQLITE_OK) {
CCLOG("DataBase PRAGMA journal_mode=WAL failed with %s", err_msg);
return false;
}