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文件
  • 相关阅读:
    C程序设计语言学习笔记(二)
    字符串处理代码(国际化转换C++版) 荣
    取得MySQL数据库表,列信息的SQL语句 荣
    C++中,以类成员函数指针作为参数对std::map中的元素进行迭代处理 荣
    我的我的C#数据库操作类(与大家交流) 荣
    以较少代码实现DataGrid的排序,翻页,删除等功能 荣
    批处理文件的学习 荣
    DLL内存管理模板类 荣
    我的C++数据库访问库 荣
    我的C++数据库访问库临界区处理类 荣
  • 原文地址:https://www.cnblogs.com/benpaobadaniu/p/4848142.html
Copyright © 2011-2022 走看看