我想将整个数组保存到SQLite中。我正在获得一个包含许多其他数组的数组。 可能吗 ?如果是这样,请告诉我。
我试过这个 - 但“错误保存数据”
NSArray *array = [dict objectForKey:@"events_data"];
sqlite3_stmt *statement;
const char *dbpath = [databasePath UTF8String];
if (sqlite3_open(dbpath, &contactDB) == SQLITE_OK)
{
NSString *insertSQL = [NSString stringWithFormat: @"INSERT INTO CONTACTS (event_array) VALUES (\"%@\")", array];
const char *insert_stmt = [insertSQL UTF8String];
sqlite3_prepare_v2(contactDB, insert_stmt, -1, &statement, NULL);
if (sqlite3_step(statement) == SQLITE_DONE)
{
NSLog(@"DATA SAVED TO DB");
} else {
NSLog(@"ERROR TO SAVE DATA");
}
sqlite3_finalize(statement);
sqlite3_close(contactDB);
}
如果有可能请告诉我如何检索它。
答案 0 :(得分:0)
您需要not use sqlite directly in iOS。实际上,您应该将持久对象包装在NSManagedObject中。要检索对象,只需创建一个NSFetchRequest,设置其实体,然后让上下文执行它,这将返回NSArray NSManagedObject个标准,您可以迭代它们。希望这有所帮助,如果您有其他问题,请发表评论。