我尝试使用C ++和SQLite,但我不知道如何将参数传递到单个字符串中以形成SQLite命令。
void InsertDB(unsigned long long phone,string name,int age,string address,long int zipcode)
{
stringstream insert;
insert << "INSERT INTO ADBOOK (PHONE,NAME,AGE,ADDRESS,ZIPCODE) VALUES (" << phone << ",'" << name << "'," << age << ",'" << address << "'," << zipcode << " ); ";
sql = insert.str();
/* Execute SQL statement */
rc = sqlite3_exec(db, sql, callback, 0, &zErrMsg);
if( rc != SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}else{
fprintf(stdout, "Records created successfully\n");
}
return;
}
我一直收到错误
错误:无法转换std::basic_string<char, std::char_traits<char>, std::allocator<char> >' to
字符*&#39;在任务中
如何使这段代码有效?
有没有更简单的方法来实现这个?这个项目需要C ++和任何类型的数据库(MySQL等)
好的,所以这里是完整的代码,这是一个大学项目,我真的需要一些帮助才能解决这个问题http://pastebin.com/XiisxBxf