一个好用的sqlite3工具类

基于FMDatabase的一层很薄的封装,主要目的是消除反复open close数据库的冗余代码,并以单例的形式暴露

#import "YLSDatabaseHelper.h"
#import "YLSGlobalUtils.h"

@implementation YLSDatabaseHelper

{
    FMDatabase* db;
}

-(id) init
{
    self = [super init];
    if(self){
        Nsstring *dbFilePath = [YLSGlobalUtils getDatabaseFilePath];
        db = [[FMDatabase alloc] initWithPath:dbFilePath];
    }
    return self;
}

+(YLSDatabaseHelper*) sharedInstance
{
    static dispatch_once_t pred = 0;
    __strong static id _sharedobject = nil;
    dispatch_once(&pred,^{
        _sharedobject = [[self alloc] init];
    });
    return _sharedobject;
}

-(void) doOperation:(void(^)(FMDatabase*))block
{
    [db open];
    block(db);
    [db close];
}

@end

相关文章

SQLite架构简单,又有Json计算能力,有时会承担Json文件/RES...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器...
安卓开发,利用SQLite实现登陆注册功能