求大神指导下关于sqlite.h函数的用法。

sfdghu 2015-09-15 09:35:42
如文章标题在sqlite.h头文件里边,哪个函数可以获得查询结果集,具体的使用方法是什么。求大神们指导小弟下
...全文
105 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sfdghu 2015-09-15
  • 打赏
  • 举报
回复
因为一些原因,我现在只能用sqlite,不能用sqlite3........所以希望能得到sqlite的解决方法。我看头文件里边sqlite_get_table函数的第3个参数是保存查询结果集的,但是事实上我得到的只是每一列的名字,并没有值,所以想问下是不是我用错了: sqlite_get_table(p_sqlite,sql.c_str(),&resultp,&row,&column,&zErrmsg); int j = column; 69 cout << "123 " << resultp[j] << endl; 70 for(int i = 0;i < row;i++) 71 { 72 map<string,string>* map_row = new map<string,string>[1024]; 73 for(int index = 0;index < column;index++) 74 { 75 76 map_row->insert(pair<string,string>(resultp[index],resultp[j])); 77 j++; 78 } 79 retvalue.push_back(map_row); 80 } 81 sqlite_free_table(resultp); 假设我这里有5行,5列的表。那resultp[6]应该是第一个数据值,但事实上这个是空的 当然我的数据库不是空的 是有有效数据的。
linfengc 2015-09-15
  • 打赏
  • 举报
回复
现在用 #include "sqlite3/sqlite3.h" 3了吧? 网上可以找到例子,头文件里面每个api也都有注释.自己看看吧. sqlite3 *m_poConn; sqlite3_stmt *m_poStmt; 连接数据库: iRetCode = sqlite3_open(strDBPath.c_str(), &m_poConn); if (iRetCode != SQLITE_OK) { string strError("Open database error: "); strError += string(sqlite3_errmsg(m_poConn)); sqlite3_close(m_poConn); 关闭: iRetCode = sqlite3_finalize(m_poStmt); m_poStmt = NULL; iRetCode = sqlite3_close(m_poConn); 执行: iRetCode = sqlite3_exec(m_poConn, m_strSql.c_str(), 0, 0, 0); 取数据: iRetCode = sqlite3_step(m_poStmt);
Pokeeeer 2015-09-15
  • 打赏
  • 举报
回复
sqlite.h是在标准库里吗?没有找到呢

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧