cocos2dx sqllite 增删查改等操作(3)
来源:未知 责任编辑:责任编辑 发表时间:2013-11-26 22:12 点击:次
p> *(count+i)=*inttemp;
p>}
p>sqlite3_close(pDB);
p>return count;
p>添加这个函数(这个我的理解也不够清楚 我就照着别人写的 大家指教一下哈)
p>[cpp]
p>int DataControl::queryCallBack(void* para,int n_column,char** column_value,char** column_name)
p>{
p> //para是你在sqlite3_exec 里传入的void*参数通过para参数,你可以传入一些特殊的指针(比如类指针、结构指针),
p> //然后在这里面强制转换成对应的类型(这里面是void*类型,必须强制转换成你的类型才可用)。然后操作这些数据
p> //n_column是这一条记录有多少个字段(即这条记录有多少列)
p> //char** column_value 是个关键值,查出来的数据都保存在这里,它实际上是个1维数组(不要以为是2维数组),
p> //每一个元素都是一个char*值,是一个字段内容(用字符串来表示,以\0结尾)
p> //char** column_name 跟column_value是对应的,表示这个字段的字段名称
p> int *temp = (int*)para;
p> int count=0;
p> sscanf(*(column_name+1),"%d",&count);
p> *temp=count;
p> return 0;
p>}
p>如插入批量数据
p>[cpp]
p>sqlite3 *pDB = NULL; //数据库指针
p>char * errMsg = NULL; //错误信息
p>char db[100]="";
p>std::string path = CCFileUtils::sharedFileUtils()->getWritablePath();
p>strcpy(db, path.c_str());
p>strcat(db,"save.db");
p>sqlite3_open(db, &pDB);
p>std::string sqlstr;//SQL指令
p>char temp[80];
p>for(int i=0;i<8;i++){
p> sprintf(temp, "update prop_t set rank=%d where ID = %d",prop[i],i+1);
p> sqlstr=temp;
p> sqlite3_exec( pDB, sqlstr.c_str() , NULL, NULL, &errMsg );
p>}
p>sqlite3_close(pDB);
p>
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>