Sqlite使用上的一个有关问题,求大牛们指点~
Sqlite使用上的一个问题,求大牛们指点~~现在发现使用Sqlite上的一个问题:sqlite3_open()打开数据库多次后
Sqlite使用上的一个问题,求大牛们指点~~
现在发现使用Sqlite上的一个问题:sqlite3_open()打开数据库多次后就不能成功执行 修改 和 插入 语句了?
我运行程序时执行了次:
C/C++ codesqlite3_open("DClient.db",&db);//打开数据库//***读数据库表,sqlite3_prepare拿一些数据***//sqlite3_close(db);//关闭数据库
再执行次按钮事件修改数据:(执行失败)
C/C++ codesqlite3_open("DClient.db",&db);//打开数据库r = sqlite3_exec(db,sSql,NULL,NULL,&errmsg);//修改数据sqlite3_close(db);//关闭数据库
如果我把打开数据库sqlite3_open("DClient.db",&db);放到初始化里面做,只打开一次。程序其他地方执行时直接执行sql语句,这是没问题的,能执行成功。 直接执行修改数据也能行的。
有没有什么方法能解决这个问题? 还是sqlite3_close(db);后还要执行什么释放操作的? 我读取下数据库,修改下数据库就行了啊,不需要一直去占着这个数据库啊。(同步的问题慢慢再说)
[解决办法]close前要用释放sqlite3_finalize释放 sqlite3_prepare分配的那个stmt指针