我用的是SQLite3和iOS。
在我的资源文件夹中有一个数据库“2012”。我在我的应用程序的目录文件夹中备份了它(名为2013),所以在那里,有 db2 012和2013具有相同的结构。
我已经做了一个视图控制器,用户可以在其中选择哪个数据库,他想打开2012或2013。
如何将“2013”NSString传递给connect方法?
-(void)connect
{
NSLog(@"%c",restore); // restore is a BOOL that becomes "YES" when i click the button for restore
if (restore == YES)
{
databaseName = [NSString stringWithFormat:@"%@.db",currentYear];
}
else
{
databaseName = @"2012.db";
}
NSLog(@"Database name is: %@",databaseName);
// Get the path to the documents directory and append the databaseName
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [documentPaths objectAtIndex:0];
databasePath = [documentsDir stringByAppendingPathComponent:databaseName];
NSLog(@"Database path is: %@",databasePath);
[self checkAndCreateDatabase];
}
我正在尝试发送年份值以连接:
NSString *year = restoreYear.text;
DatabaseDB *databaseDB = [[DatabaseDB alloc]init];
databaseDB.currentYear = year; //in DatabaseDB i have created property for current year and restore
databaseDB.restore = YES;
1条答案
按热度按时间gfttwv5a1#
恢复功能表示您希望返回到拍摄快照的时间点。如果这是您真正想要的,您所需要做的就是将备份的数据库复制到“活动”数据库的名称。或者,您可以先重命名活动副本,以便可以撤消恢复。