C sqlite3插入或替换查询我认为是错误的

c++ sqlite3 insert or replace query i think is erroring

本文关键字:认为是 错误 查询 替换 sqlite3 插入      更新时间:2023-10-16

我已更正到我的数据库,但是当我启动命令时,会出现错误。

我的桌子:

a{ id int primary key not null, name varchar not null, and order int not null }

我的声明:

string query = "insert or replace into a (id,name,order) values (5,'hi',10)"
int rc;
rc = sqlite3_exec(db, query.c_str(), 0,0,&errMsg);
if(rc != SQLITE_OK){
    cout << "Error Code: " << rc << " SQLError: " << errMsg<<endl;
}

我不确定这是如何工作的。这是插入的三位一体。它将看到PK匹配。...然后,它将替换,它会尝试用自身替换PK吗?我不确定。RC给出的返回错误代码是:

1   /* SQL error or missing database */

该表未在DB中创建。开发人员之一更改了模式,丢弃了旧桌子,并添加了新的桌子,而无需记录或给我任何形式的通知。

现在应该解决它。