【发布时间】:2018-02-13 17:07:28
【问题描述】:
我正在尝试从 csv 文件中读取数据并将每一行添加到 c++ 中的数据库中。 csv 文件格式为id,firstname,surname,job 我的代码是:
while (file.good())
{
getline (file, id, ',');
getline (file, firstname, ',');
getline (file, surname, ',');
getline (file, job, ' ');
cur->set_sql( "INSERT INTO staff VALUES (?, ?, ?, ?);" );
cur->prepare();
cur->bind(1, id);
cur->bind(2, firstname);
cur->bind(3, surname);
cur->bind(4, job);
cur->step();
cur->reset();
}
但是当我运行代码时它返回错误Sqlite error: Could not reset the virtual machine. 我不明白这是什么意思或如何解决它。我在谷歌上搜索了错误,但我找不到任何关于它的信息
【问题讨论】:
-
你看过step的返回码了吗?
-
@UKMonkey 它返回 0
-
致电sqlite3_errmsg() 以获取实际的错误消息。
-
@CL。它返回
1,这意味着sqlite_error -
sqlite3_errmsg()不返回数字。