[C++] sqlite3_get_table 的使用

不知道为啥 sqlite3 里面使用 "UPDATE" 更新数据,更新失败也不报错,所以就想绕过去。先查一下字段存在不存在,然后再update

cpp 复制代码
std::string selectsql =  "SELECT COUNT(*) FROM table_name WHERE some_condition";
char** dbResult;
char* errmsg = NULL;        //用来存储错误信息字符串
int nRow = 0, nColumn = 0;  // nRow  查找出的总行数,nColumn 存储列
int ret = sqlite3_get_table(db, selectsql.c_str(), &dbResult, &nRow, &nColumn, &errmsg);
if (SQLITE_OK != ret || nRow == 0)
{

    sqlite3_free_table(dbResult);
   // do_something
}
 sqlite3_free_table(dbResult);
// do_something


std::string sql = "UPDATE table_name SET item1=? \
    WHERE item2=? and item3=? and item4=?;  ";

sqlite3_prepare_v2(db, sql.c_str(), -1, &statement, nullptr);
int index = 0;
QByteArray inByteArray
sqliteBind(statement, index, inByteArray.data(), inByteArray.length());  
sqliteBind(statement, index, "...");         
sqliteBind(statement, index, "...");  
sqliteBind(statement, index, "...");    
相关推荐
剩下了什么26 分钟前
MySQL JSON_SET() 函数
数据库·mysql·json
山峰哥1 小时前
数据库工程与SQL调优——从索引策略到查询优化的深度实践
数据库·sql·性能优化·编辑器
较劲男子汉1 小时前
CANN Runtime零拷贝传输技术源码实战 彻底打通Host与Device的数据传输壁垒
运维·服务器·数据库·cann
java搬砖工-苤-初心不变1 小时前
MySQL 主从复制配置完全指南:从原理到实践
数据库·mysql
ggabb2 小时前
中文的全息之美:字音藏道,字里见宇宙
sqlite
山岚的运维笔记3 小时前
SQL Server笔记 -- 第18章:Views
数据库·笔记·sql·microsoft·sqlserver
rainbow68894 小时前
EffectiveC++入门:四大习惯提升代码质量
c++
roman_日积跬步-终至千里4 小时前
【LangGraph4j】LangGraph4j 核心概念与图编排原理
java·服务器·数据库
汇智信科4 小时前
打破信息孤岛,重构企业效率:汇智信科企业信息系统一体化运营平台
数据库·重构
秋邱4 小时前
用 Python 写出 C++ 的性能?用CANN中PyPTO 算子开发硬核上手指南
开发语言·c++·python