cocos2d-x 中 Sqlite3 事务(Transaction)操作
来源:互联网 发布:炉石淘宝买卡包安全吗 编辑:程序博客网 时间:2024/06/01 07:40
在sqlite3中,事务是没提炼出一个接口。就只好写到sql语句中,不过倒是不太麻烦。
sqlite3_exec ( m_pDB , "begin transaction" , 0 , 0 , & errMsg );sqlite3_exec ( m_pDB , "commit transaction" , 0 , 0 , & errMsg );sqlite3_exec ( m_pDB , "rollback transaction" , 0 , 0 , &errMsg );
我将事务操作封装到两个函数中,开始和结束时调用。如果关闭数据库时未结束事务,默认情况是回滚。
函数的定义和实现如下:
/* *开始一个事物,要在完成事物后调用结束。 * *返回为SQLITE_XXX标准宏 */ int beginTransaction();/* *结束一个事务。 *参数为先前执行sql语句的返回值,即标志成功还是要回滚。 * *返回为SQLITE_XXX标准宏 */ int endTransaction(int sqlResult);
int DataUtil::beginTransaction(){char msg[ERR_LENGTH] = {0};char* errMsg = msg;int result = sqlite3_exec ( m_pDB , "begin transaction" , 0 , 0 , & errMsg );if(result != SQLITE_OK ) CCLog( "开始事务记录失败,错误码:%d ,错误原因:%s\n" , result, errMsg ); return result;}int DataUtil::endTransaction(int sqlResult){if (sqlResult ==SQLITE_OK){char msg[ERR_LENGTH] = {0};char* errMsg = msg;int result = sqlite3_exec ( m_pDB , "commit transaction" , 0 , 0 , & errMsg );if(result != SQLITE_OK ) CCLog( "提交事务记录失败,错误码:%d ,错误原因:%s\n" , result, errMsg ); return result;}else{char msg[ERR_LENGTH] = {0};char* errMsg = msg;int result = sqlite3_exec ( m_pDB , "rollback transaction" , 0 , 0 , & errMsg );if(result != SQLITE_OK ) CCLog( "回滚事务记录失败,错误码:%d ,错误原因:%s\n" , result, errMsg ); return result;}}
本篇博客出自阿修罗道,转载请注明出处:http://blog.csdn.net/fansongy/article/details/8966730
- cocos2d-x 中 Sqlite3 事务(Transaction)操作
- 嵌入式 sqlite3中事务操作小结
- sqlite transaction事务操作
- 在Quick-cocos2d-x中使用sqlite3数据库
- Cocos2d-x Sqlite3数据存储
- cocos2d-x lua与sqlite3
- cocos2d-x sqlite3使用整理
- SQL2008中事务TRANSACTION案例
- cocos2d-x 下使用加密 sqlite3
- cocos2d-x sqlite3 android上open失败
- cocos2d-x 下使用加密 sqlite3
- Cocos2d-x,SQLite3数据库用法,编译,配置
- redis 学习手册之事务 transaction 操作
- iOS中sqlite3操作
- Transaction 事务
- Transaction-事务
- 事务Transaction
- Transaction事务
- C语言中用柔性数组实现斐波那契数列
- ogre开发环境快速搭建(成功率100%)
- cookie 和session 的区别详解
- Forward函数和sendRedirect函数
- Algorithm notes
- cocos2d-x 中 Sqlite3 事务(Transaction)操作
- 文件 I/O——open函数
- 排列2 + stl函数+ next_permutation()
- Spring事务杂谈
- UVaOJ674 - Coin Change
- 算法竞赛入门经典 快速排序和并归排序
- Oracle中常用的to_Char用法详解(有FMT的详细列表)
- centos6.2使用yum安装lamp
- poj_1321_棋盘问题(DFS)