sqlite3在c ++中返回未知错误

时间:2015-11-10 15:19:30

标签: c++ sqlite

所有我的程序都有问题

这是我的代码

# include <iostream>
# include <sqlite3.h>
# include <sstream>
using namespace std;
int main()
{
sqlite3 *db;
sqlite3_stmt *res;
int rc;
string nama;
int umur;
rc=sqlite3_open("namaorang.db",&db);
if(rc!=SQLITE_OK)
{
    cout<<sqlite3_errmsg(db);
}
else
{
    cout<<"Nama : ";cin>>nama;
    cout<<"Umur : ";cin>>umur;
    stringstream sql;
    sql<<"INSERT INTO data (nama,umur)VALUES ('"<<nama<<"','"<<umur<<"');";
    rc=sqlite3_prepare(db,sql.str().c_str(),-1,&res,NULL);
    if(rc!=SQLITE_OK)
    {
        cout<<sqlite3_errmsg(db);
        sqlite3_close(db);
    }
    rc=sqlite3_step(res);
    if(rc!=SQLITE_OK)
    {
        cout<<sqlite3_errmsg(db);
    }

}
sqlite3_finalize(res);
sqlite3_close(db);
}

当我运行我的程序并输入查询时,此程序返回未知错误,如何修复此问题..同时错误未知,如何知道错误..感谢您阅读本文

1 个答案:

答案 0 :(得分:1)

if(rc!=SQLITE_OK)
{
    cout<<sqlite3_errmsg(db);
    sqlite3_close(db);
}

这里似乎需要return,但您会在错误后继续处理结果。