SQLite

 
什麼是SQLite
SQLite是一款輕型的嵌入式數據庫
它佔用資源很是的低,在嵌入式設備中,可能只須要幾百K的內存就夠了
它的處理速度比Mysql、PostgreSQL這兩款著名的數據庫都還快
什麼是數據庫
數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫
數據庫能夠分爲2大種類
關係型數據庫(主流)
對象型數據庫
經常使用關係型數據庫
PC端:Oracle、MySQL、SQL Server、Access、DB二、Sybase
嵌入式\移動客戶端:SQLite
 
 
數據庫是如何存儲數據的
數據庫的存儲結構和excel很像,以表(table)爲單位
數據庫存儲數據的步驟
新建一張表(table)
添加多個字段(column,列,屬性)

 

添加多行記錄(row,每行存放多個字段對應的值)
 
數據存儲的方式:
Plist(NSArray\NSDictionary)
Preference(偏好設置\NSUserDefaults)
NSCoding(NSKeyedArchiver\NSkeyedUnarchiver)
SQLite3
Core Data

1.打開數據庫sql

int sqlite3_open(數據庫

    const char *filename,   // 數據庫的文件路徑數據結構

    sqlite3 **ppDb          // 數據庫實例函數

);spa

 

2.執行任何SQL語句excel

int sqlite3_exec(sqlite

    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);  // 字符串數據

相關文章
相關標籤/搜索