導(dǎo)入#import "FMDatabaseAdditions.h"
//打開(kāi)數(shù)據(jù)庫(kù)
- (BOOL)openDB {
NSString *path = [kDocumentFolder stringByAppendingPathComponent:DATABASE_LOCAL_NAME];
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL find = [fileManager fileExistsAtPath:path];
//找到數(shù)據(jù)庫(kù)文件并打開(kāi)
if(find) {
db_ = [FMDatabase databaseWithPath:path];
if (![db_ open]) {
NSLog(@"Could not open db.");
return 0;
}
//判斷該字段在表里面是否存在
if (![db_ columnExists:@"imageUrl" inTableWithName:@"SpbCaseTaskImageStatus"]) {
NSString *altertStr=[NSString stringWithFormat:@"ALTER TABLE %@ ADD %@? VARCHAR",@"SpbCaseTaskImageStatus",@"imageUrl"];
BOOL isRec = [db_ executeUpdate:altertStr];
//? ? ? ? ? ? NSLog(@"%@------",isRec);
}
return 1;
} else { //找不到數(shù)據(jù)庫(kù)則創(chuàng)建數(shù)據(jù)庫(kù)荠察,初始化數(shù)據(jù)庫(kù)結(jié)構(gòu)
db_ = [FMDatabase databaseWithPath:path];
BOOL isCreate = 0;
if ([db_ open]) {
isCreate = [self createTable];
}
//創(chuàng)建數(shù)據(jù)表不成功或者不能打開(kāi)园细,則刪除創(chuàng)建的文件(如果有)
if (!isCreate || ![db_ open]) {
find = [fileManager fileExistsAtPath:path];
if(find) {
[fileManager removeItemAtPath:path error:nil];
}
NSLog(@"Could not open db.");
return 0;
}
return 1;
}
return 0;
}