zoukankan      html  css  js  c++  java
  • UI:sqlite数据库

    使用sqllite的时候一些笔记

    数据库(管理类),在工程 general 导入 动态链接库 libsqllite3.0.dylib  在.h文件里引入导入 sqllite3.h 头文件

    在.h里面声明两个方法:

    (1)打开数据库

    (2)关闭数据库

    对应文件代码:

    #import <Foundation/Foundation.h>
    #import <sqlite3.h>
    
    @interface DataBaseManager : NSObject
    //打开数据库
    +(sqlite3 *)openDataBase;
    //关闭数据库
    +(void)closeDataBase;
    @end
    View Code DataBaseManage.h文件

    在.m文件里定义一个全局变量来存储数据库对象

    然后分别实现两个方法,代码如下:

    #import "DataBaseManager.h"
    
    //助手类
    /*该类是数据库的管理类,提供两个功能
     1.打开数据库
     2.关闭数据库
     
     导入动态的链接库 libsqllite3.0.dylib 动态链接库,然后导入 sqlite3.h 头文件
     */
    
    //存储数据库对象
    static sqlite3 * db = nil;//全局变量写这里也可,写下面也可
    @implementation DataBaseManager
    
    
    //打开数据库
    +(sqlite3 *)openDataBase{
        //优化
        if (db) {//如果数据库对象不为空,说明之前打开过,我们直接返回数据库的地址
            return db;
        }
        NSString * filePath = [self getFilePath];
        //打开数据仓库 (对路径进行编码转化)
        //第一个参数:数据库文件夹的位置
        //第二个参数:数据库对象
        sqlite3_open([filePath UTF8String], &db) ;
        return db;
    }
    //保存的路径
    +(NSString *)getFilePath{
        //1,找到沙盒文件位置 2,拼接文件夹路径
    //    NSString * str = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];
    //    NSString * path = [str stringByAppendingPathComponent:@"DataBase.sqlite"];
    //    return path;
        return [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject] stringByAppendingPathComponent:@"DataBase.sqlite"];
    }
    
    //关闭数据库
    +(void)closeDataBase{
        if (db) {
            sqlite3_close(db);
            db = nil;//设置指针为空
        }
    }
    
    @end
    View Code DataBaseManage.m文件
  • 相关阅读:
    java基础测试
    java随笔
    Android 开机广播的使用
    ZOJ 3715 Kindergarten Election
    LightOJ 1051
    LightOJ 1042
    LightOJ 1049
    LightOJ 1048
    LeightOJ 1046
    LightOJ 1045
  • 原文地址:https://www.cnblogs.com/benpaobadaniu/p/4848142.html
Copyright © 2011-2022 走看看