5 个解决方案
#1
你的代码是什么?不成功的表现是什么?
#2
std::wstring strSQL; //构造一个创建数据库的SQL(Craete Table...)
sqlite3_stmt *stmt;
const void *tail = NULL;
sqlite3_prepare16(&db, strSQL.c_str(), 100, &stmt, &tail);
这样返回SQLITE_ERROR
sqlite3_stmt *stmt;
const void *tail = NULL;
sqlite3_prepare16(&db, strSQL.c_str(), 100, &stmt, &tail);
这样返回SQLITE_ERROR
#3
你的strSQL的长度是100?
#4
既然返回SQLITE_ERROR,可以把error string打出来,看看具体什么错。
#5
解决了sqlite3_prepare16();可以准备宽字符的SQL语句,第三个参数是字节数,而不是字符数,所以要字符数乘2
#1
你的代码是什么?不成功的表现是什么?
#2
std::wstring strSQL; //构造一个创建数据库的SQL(Craete Table...)
sqlite3_stmt *stmt;
const void *tail = NULL;
sqlite3_prepare16(&db, strSQL.c_str(), 100, &stmt, &tail);
这样返回SQLITE_ERROR
sqlite3_stmt *stmt;
const void *tail = NULL;
sqlite3_prepare16(&db, strSQL.c_str(), 100, &stmt, &tail);
这样返回SQLITE_ERROR
#3
你的strSQL的长度是100?
#4
既然返回SQLITE_ERROR,可以把error string打出来,看看具体什么错。
#5
解决了sqlite3_prepare16();可以准备宽字符的SQL语句,第三个参数是字节数,而不是字符数,所以要字符数乘2