zoukankan      html  css  js  c++  java
  • SQLite

     
    什么是SQLite
    SQLite是一款轻型的嵌入式数据库
    它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了
    它的处理速度比Mysql、PostgreSQL这两款著名的数据库都还快
    什么是数据库
    数据库(Database)是按照数据结构来组织、存储和管理数据的仓库
    数据库可以分为2大种类
    关系型数据库(主流)
    对象型数据库
    常用关系型数据库
    PC端:Oracle、MySQL、SQL Server、Access、DB2、Sybase
    嵌入式移动客户端:SQLite
     
     
    数据库是如何存储数据的
    数据库的存储结构和excel很像,以表(table)为单位
    数据库存储数据的步骤
    新建一张表(table)
    添加多个字段(column,列,属性)
    添加多行记录(row,每行存放多个字段对应的值)
     
    数据存储的方式:
    Plist(NSArrayNSDictionary)
    Preference(偏好设置NSUserDefaults)
    NSCoding(NSKeyedArchiverNSkeyedUnarchiver)
    SQLite3
    Core Data

    1.打开数据库

    int sqlite3_open(

        const char *filename,   // 数据库的文件路径

        sqlite3 **ppDb          // 数据库实例

    );

    2.执行任何SQL语句

    int sqlite3_exec(

        sqlite3*,                                  // 一个打开的数据库实例

        const char *sql,                           // 需要执行的SQL语句

        int (*callback)(void*,int,char**,char**),  // SQL语句执行完毕后的回调

        void *,                                    // 回调函数的第1个参数

        char **errmsg                              // 错误信息

    );

    3.检查SQL语句的合法性(查询前的准备)

    int sqlite3_prepare_v2(

        sqlite3 *db,            // 数据库实例

        const char *zSql,       // 需要检查的SQL语句

        int nByte,              // SQL语句的最大字节长度

        sqlite3_stmt **ppStmt,  // sqlite3_stmt实例,用来获得数据库数据

        const char **pzTail

    );

    4.查询一行数据

    int sqlite3_step(sqlite3_stmt*); // 如果查询到一行数据,就会返回SQLITE_ROW

    5.利用stmt获得某一字段的值(字段的下标从0开始)

    double sqlite3_column_double(sqlite3_stmt*, int iCol);  // 浮点数据

    int sqlite3_column_int(sqlite3_stmt*, int iCol); // 整型数据

    sqlite3_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol); // 长整型数据

    const void *sqlite3_column_blob(sqlite3_stmt*, int iCol); // 二进制文本数据

    const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);  // 字符串数据

  • 相关阅读:
    吴恩达 — 神经网络与深度学习 — L1W3练习
    吴恩达 — 神经网络与深度学习 — L1W2练习
    吴恩达 — 神经网络与深度学习 — L1W1练习
    Scala基础编程
    HDFS常用命令介绍与使用
    关于Eureka客户端连接服务端报错问题Cannot execute request on any known server
    Spring Cloud_Ribbon
    Spring Cloud_eureka组件
    CAS单点登录入门
    Spring Boo数据访问JDBC
  • 原文地址:https://www.cnblogs.com/Ruby-Hua/p/5222783.html
Copyright © 2011-2022 走看看