sqlite 能够创建内存数据库,但它可以在 iPhone 中完成吗?
这是 sqlite http://www.sqlite.org/inmemorydb.html中的文档状态
我试过了,但失败了。它成功创建数据库,但未能创建表。下面是我的代码:
-(BOOL) open{
NSString *path = @"";
if(sqlite3_open([path UTF8String], &database_) == SQLITE_OK) {
//bFirstCreate_ = YES;
NSLog(@"open == YES");
[self createChannelsTable:database_];
return YES;
} else {
sqlite3_close(database_);
NSLog(@"Error: open database file.");
return NO;
}
return NO;
}
- (BOOL) createChannelsTable:(sqlite3*)db{
NSString *comment = [[NSString alloc] init];
comment = @"CREATE TABLE Temp(Name text, Address text}";
sqlite3_stmt *statement;
if(sqlite3_prepare_v2(db, [comment UTF8String], -1, &statement, nil) != SQLITE_OK) {
NSLog(@"Error: failed to prepare statement:create channels table");
return NO;
}
int success = sqlite3_step(statement);
sqlite3_finalize(statement);
if ( success != SQLITE_DONE) {
NSLog(@"Error: failed to dehydrate:CREATE TABLE channels");
return NO;
}
NSLog(@"Create table 'channels' successed.");
return YES;
}