FMDBパッケージ使用、工具類作成
2811 ワード
//
// DataBaseTool.h
// TheDasBest
//
// Created by on 16/7/25.
// Copyright © 2016 . All rights reserved.
//
#import
#import "FMDB.h"
@interface DataBaseTool : NSObject
+(FMDatabase*)shareDataBase;
+(BOOL)openDataBase;
+(BOOL)closeDataBase;
@end
//
// DataBaseTool.m
// TheDasBest
//
// Created by on 16/7/25.
// Copyright © 2016 . All rights reserved.
//
#import "DataBaseTool.h"
static FMDatabase*_db;
@implementation DataBaseTool
//
+(FMDatabase*)shareDataBase
{
// if ([self copyDBFile])
// {
if (_db==nil)
{
_db=[[FMDatabase alloc]initWithPath:[self getDBFilePath ]];
}
// ,
[_db setShouldCacheStatements:YES];
// }
// else
// {
// NSAssert(NO, @" ");
// }
return _db;
}
//
+(NSString*)getDBFilePath
{
NSString *documentPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
NSString *dbFilePath = [documentPath stringByAppendingPathComponent:@"cosmetics.sqlite"];
NSLog(@" :%@",dbFilePath);
return dbFilePath;
}
//
+(BOOL)openDataBase
{
if ([_db open]==NO)
{
[_db close];
NSAssert(NO, @" !");
}
[_db setShouldCacheStatements:YES]
;
return YES;
}
+(BOOL)closeDataBase
{
if ([_db close]==NO)
{
NSAssert(NO, @" ");
}
return YES;
}
@end
//
// groupDao.h
// TheDasBest
//
// Created by on 16/7/25.
// Copyright © 2016 . All rights reserved.
//
#import
@interface groupDao : NSObject
+(NSArray*)queryAllGroup;//
@end
//
// groupDao.m
// TheDasBest
//
// Created by ** on 16/7/25.
// Copyright © 2016 ** . All rights reserved.
//
#import "groupDao.h"
#import "DataBaseTool.h"
#import "groupTable.h"
@implementation groupDao
//
+(NSArray*)queryAllGroup
{
FMDatabase*db=[DataBaseTool shareDataBase];
[DataBaseTool openDataBase];
NSMutableArray *arr = [NSMutableArray array];
if ([db tableExists:@"groupTable"])
{
//
FMResultSet*set=[db executeQuery:@"select *from groupTable"];
while ([set next])
{
groupTable*model=[[groupTable alloc]init];
// model.id=[set intForColumn:@"id"];
model.name=[set stringForColumn:@"name"];
model.kind=[set stringForColumn:@"kind"];
model.number=[set intForColumn:@"number"];
[arr addObject:model];
}
}
[DataBaseTool closeDataBase];
return arr;
}
@end