【发布时间】:2012-10-25 01:03:26
【问题描述】:
我试图在我的 sqlite 文件中只插入一个名称。我正在使用此代码,但它不起作用:/
-(void)InsertRecords:(NSMutableString *) txt{
if(addStmt == nil) {
const char *sql = "INSERT INTO myMovies (movieName) VALUES(?) ";
if(sqlite3_prepare_v2(database, sql, -1, &addStmt, NULL) != SQLITE_OK)
NSAssert1(0, @"Error while creating add statement. '%s'", sqlite3_errmsg(database));
else
sqlite3_bind_text(addStmt, 1, [txt UTF8String], -1, SQLITE_TRANSIENT);
}
if(SQLITE_DONE != sqlite3_step(addStmt))
NSAssert1(0, @"Error while inserting data. '%s'", sqlite3_errmsg(database));
else
sqlite3_reset(addStmt);
}
【问题讨论】:
-
@adum 错误是:断言失败 -[MyDvDsList InsertRecords:], /Users/.../MyDvDsList.m:52 2012-10-25 02:00:54.916 MyDvDs[28287: 14003] *** 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“创建添加语句时出错。 '内存不足''
-
当您收到“内存不足”错误时,这实际上意味着
database的sqlite3指针是NULL(通常是无法正确打开数据库的症状) .