直接上代碼
//
// DataBaseTool.h
// TheDasBest
//
// Created by on 16/7/25.
// Copyright ? 2016年. All rights reserved.
//
#import <Foundation/Foundation.h>
#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
//創(chuàng)建數(shù)據(jù)庫對象
+(FMDatabase*)shareDataBase
{
// if ([self copyDBFile])
// {
if (_db==nil)
{
_db=[[FMDatabase alloc]initWithPath:[self getDBFilePath ]];
}
//設(shè)置緩存,提高效率
[_db setShouldCacheStatements:YES];
// }
// else
// {
// NSAssert(NO, @"數(shù)據(jù)庫拷貝失敗");
// }
return _db;
}
//文件路徑
+(NSString*)getDBFilePath
{
NSString *documentPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
NSString *dbFilePath = [documentPath stringByAppendingPathComponent:@"cosmetics.sqlite"];
NSLog(@"文件路徑是:%@",dbFilePath);
return dbFilePath;
}
//打開數(shù)據(jù)庫
+(BOOL)openDataBase
{
if ([_db open]==NO)
{
[_db close];
NSAssert(NO, @"數(shù)據(jù)庫打開失敗!");
}
[_db setShouldCacheStatements:YES]
;
return YES;
}
+(BOOL)closeDataBase
{
if ([_db close]==NO)
{
NSAssert(NO, @"關(guān)閉數(shù)據(jù)庫失敗");
}
return YES;
}
@end
//
// groupDao.h
// TheDasBest
//
// Created by on 16/7/25.
// Copyright ? 2016年 . All rights reserved.
//
#import <Foundation/Foundation.h>
@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
//查詢所有的數(shù)據(jù)
+(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