• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 126,  comments - 73,  trackbacks - 0

            int sqlite3_open(
              const char *filename,   /* Database filename (UTF-8) */
              sqlite3 **ppDb          /* OUT: SQLite db handle */
            );
            功能:打開數(shù)據(jù)庫,如果不存在則自動創(chuàng)建.
            PARAM1(IN): 數(shù)據(jù)庫文件名,UTF-8格式
            PARAM2(OUT):  返回的數(shù)據(jù)庫句柄
            返回值:返回SQLITE_OK成功,反之失敗(數(shù)據(jù)庫句柄ppDb為空),失敗值見具體SQLITE_*定義.
            =====================================================================================

            int sqlite3_close(sqlite3 *);
            功能:關(guān)閉數(shù)據(jù)庫
            PARAM1(IN):打開的數(shù)據(jù)庫句柄
            返回值:返回SQLITE_OK成功,反之失敗.
            =====================================================================================

            int sqlite3_exec(
              sqlite3*,                     /* An open database */
              const char *sql,              /* SQL to be executed */
              sqlite3_callback,             /* Callback function */
              void *,                       /* 1st argument to callback function */
              char **errmsg                 /* Error msg written here */
            );
            功能:執(zhí)行SQL
            PARAM1(IN):數(shù)據(jù)庫句柄
            PARAM2(IN):sql語句,以\0結(jié)尾.
            PARAM3(IN):回調(diào)函數(shù)
            PARAM4(IN):回調(diào)參數(shù)
            PARAM5(OUT):輸出錯(cuò)誤信息
            返回值:SQLITE_OK成功,反之失敗,失敗后錯(cuò)誤信息見PARAM5;
            說明:如果有多條SQL語句,中間用分號(;)隔開.回調(diào)函數(shù)和回調(diào)參數(shù)通常在查詢語句會用到,
            對每條查詢結(jié)果結(jié)果都會調(diào)用回調(diào)函數(shù)一次.
            回調(diào)函數(shù)格式:
            typedef int(*sqlite3_callback)(void *,int ,char **,char **);
            參數(shù)1:sqlite3_exec中傳入的參數(shù)
            參數(shù)2:總列數(shù).
            參數(shù)3:列數(shù)據(jù)(char*)
            參數(shù)4:列名稱(char*)

            =====================================================================================
            int sqlite3_get_table(
              sqlite3*,               /* An open database */
              const char *sql,       /* SQL to be executed */
              char ***resultp,       /* Result written to a char *[]  that this points to */
              int *nrow,             /* Number of result rows written here */
              int *ncolumn,          /* Number of result columns written here */
              char **errmsg          /* Error msg written here */
            );
            功能:查詢表
            PARAM1(IN):數(shù)據(jù)庫句柄
            PARAM2(IN):sql語句,以\0結(jié)尾.
            PARAM3(OUT):查詢結(jié)果
            PARAM4(OUT):返回行數(shù)(多少條數(shù)據(jù))
            PARAM5(OUT):返回列數(shù)(多少字段)
            PARAM6(OUT):返回錯(cuò)誤信息
            返回值:SQLITE_OK成功,房子失敗見錯(cuò)誤信息

            =====================================================================================
            void sqlite3_free_table(char **result);
            功能:釋放通過sqlite3_get_table查詢保存的結(jié)果數(shù)據(jù)
            PARAM1(IN):要釋放的數(shù)據(jù)指針


            =====================================================================================
            int sqlite3_prepare(
              sqlite3 *db,            /* Database handle */
              const char *zSql,       /* SQL statement, UTF-8 encoded */
              int nBytes,             /* Length of zSql in bytes. */
              sqlite3_stmt **ppStmt,  /* OUT: Statement handle */
              const char **pzTail     /* OUT: Pointer to unused portion of zSql */
            );
            功能:構(gòu)造查詢
            PARAM1(IN):數(shù)據(jù)庫句柄
            PARAM2(IN):sql語句
            PARAM3(IN):sql語句長度,設(shè)置成-1則自動按字符串計(jì)算sql語句長度
            PARAM4(OUT):保存的查詢結(jié)構(gòu)體,
            PARAM5(OUT):NULL即可
            返回值:SQLITE_OK成功.


            =====================================================================================
            int sqlite3_bind_blob(sqlite3_stmt*, int, const void*, int n, void(*)(void*));
            功能:為查詢結(jié)構(gòu)體綁定數(shù)據(jù)
            PARAM1(IN):查詢結(jié)構(gòu)體
            PARAM2(IN):綁定第幾個(gè)數(shù)據(jù)(sql語句中的第幾個(gè)問號(?))
            PARAM3(IN):二進(jìn)制數(shù)據(jù)指針
            PARAM4(IN):二進(jìn)制數(shù)據(jù)長度
            PARAM5(IN):析構(gòu)回調(diào)函數(shù),通常設(shè)置NULL,結(jié)束后自己釋放
            返回值:S_OK成功.
            說明:綁定函數(shù)必須要在sqlite3_step前,sqlite3_prepare或者sqlite3_reset之后調(diào)用.
            未綁定的參數(shù)缺省為NULL,類似的綁定函數(shù)還有以下
            int sqlite3_bind_double(sqlite3_stmt*, int, double);
            int sqlite3_bind_int(sqlite3_stmt*, int, int);
            int sqlite3_bind_int64(sqlite3_stmt*, int, sqlite_int64);
            int sqlite3_bind_null(sqlite3_stmt*, int);
            int sqlite3_bind_text(sqlite3_stmt*, int, const char*, int n, void(*)(void*));
            int sqlite3_bind_text16(sqlite3_stmt*, int, const void*, int, void(*)(void*));
            int sqlite3_bind_value(sqlite3_stmt*, int, const sqlite3_value*);

             

            =====================================================================================
            int sqlite3_reset(sqlite3_stmt *pStmt);
            功能:重置所有綁定的值,回到剛剛調(diào)用sqlite3_prepare后的狀態(tài)


            =====================================================================================
            int sqlite3_step(sqlite3_stmt*);
            功能:執(zhí)行查詢
            PARAM1:查詢結(jié)構(gòu)體
            返回值:
            SQLITE_BUSY:數(shù)據(jù)庫被鎖,可以等待釋放后重新調(diào)用該函數(shù)
            SQLITE_DONE:成功
            SQLITE_ROW:成功并且有數(shù)據(jù)返回,對每查詢到一條數(shù)據(jù)都會返回該值,
               可以調(diào)用sqlite3_column_*函數(shù)獲取數(shù)據(jù)后重新調(diào)用處理下一條數(shù)據(jù)
            SQLITE_ERROR:失敗
            SQLITE_MISUSE:錯(cuò)誤的調(diào)用,比如已經(jīng)返回了SQLITE_DONE或者SQLITE_ERROR后還繼續(xù)調(diào)用該函數(shù)


            =====================================================================================
            int sqlite3_finalize(sqlite3_stmt *pStmt);
            功能:釋放查詢結(jié)構(gòu)體

            =====================================================================================
            int sqlite3_key(
              sqlite3 *db,                   /* Database to be rekeyed */
              const void *pKey, int nKey     /* The key */
            );
            功能:為加密的數(shù)據(jù)庫指定密碼,改函數(shù)在sqlite3_open之后調(diào)用

            =====================================================================================
            int sqlite3_rekey(
              sqlite3 *db,                   /* Database to be rekeyed */
              const void *pKey, int nKey     /* The new key */
            );
            功能:重設(shè)數(shù)據(jù)庫密碼,如果pKey = 0 或者 nKey = 0,這數(shù)據(jù)庫不加密


            =====================================================================================

             


            const char *sqlite3_libversion(void);
            int sqlite3_libversion_number(void);
            功能:獲取版本號

            sqlite_int64 sqlite3_last_insert_rowid(sqlite3*);
            功能:獲取最后插入的行標(biāo)示.

            int sqlite3_changes(sqlite3*);
            功能:獲取最近執(zhí)行的sqlite3_exec影響的行數(shù).

            int sqlite3_total_changes(sqlite3*);
            功能:獲取自從數(shù)據(jù)庫打開后有改動的函數(shù)

            void sqlite3_interrupt(sqlite3*);
            功能:打斷或停止數(shù)據(jù)庫當(dāng)前操作.

            int sqlite3_complete(const char *sql);
            功能:判斷語句是否以分號(;)結(jié)尾

            int sqlite3_busy_handler(sqlite3*, int(*)(void*,int), void*);
            功能:設(shè)置查詢忙碌時(shí)的回調(diào)處理
            說明:缺省的回調(diào)函數(shù)為空,如果回調(diào)函數(shù)為空,表鎖定后sqlite3_exec()執(zhí)行會直接返回SQLITE_BUSY

            int sqlite3_busy_timeout(sqlite3*, int ms);
            功能:設(shè)置查詢超時(shí)時(shí)間(毫秒)

             

            char *sqlite3_mprintf(const char*,...);
            char *sqlite3_vmprintf(const char*, va_list);
            char *sqlite3_snprintf(int,char*,const char*, ...);
            功能:格式化字符,需要用%q來代替%s.(主要是不用對分號'進(jìn)行轉(zhuǎn)義)


            void *sqlite3_malloc(int);
            void *sqlite3_realloc(void*, int);
            void sqlite3_free(void*);
            功能:內(nèi)存函數(shù)

            int sqlite3_set_authorizer(
              sqlite3*,
              int (*xAuth)(void*,int,const char*,const char*,const char*,const char*),
              void *pUserData
            );
            功能:設(shè)置數(shù)據(jù)庫授權(quán)

            void *sqlite3_trace(sqlite3*, void(*xTrace)(void*,const char*), void*);
            void *sqlite3_profile(sqlite3*,
               void(*xProfile)(void*,const char*,sqlite_uint64), void*);

            void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*);
            功能:設(shè)置執(zhí)行回調(diào)函數(shù),sqlite3_exec(),sqlite3_step() ,sqlite3_get_table()時(shí)會調(diào)用

            void *sqlite3_commit_hook(sqlite3*, int(*)(void*), void*);
            功能:設(shè)置事務(wù)回調(diào)函數(shù)

            int sqlite3_errcode(sqlite3 *db);
            const char *sqlite3_errmsg(sqlite3*);
            功能:獲取錯(cuò)誤碼和錯(cuò)誤消息

            int sqlite3_bind_parameter_count(sqlite3_stmt*);
            功能:返回需要綁定的參數(shù)數(shù)目(sql語句中問號?數(shù)量)

            const char *sqlite3_bind_parameter_name(sqlite3_stmt*, int);
            功能:獲取綁定參數(shù)名字,?參數(shù)返回NULL

            int sqlite3_bind_parameter_index(sqlite3_stmt*, const char *zName);
            功能:獲取綁定參數(shù)索引

            int sqlite3_clear_bindings(sqlite3_stmt*);
            功能:清除綁定的參數(shù)


            int sqlite3_column_count(sqlite3_stmt *pStmt);
            功能:獲取列數(shù)
            const char *sqlite3_column_name(sqlite3_stmt*,int);
            功能:獲取列名


            const char *sqlite3_column_database_name(sqlite3_stmt*,int);
            const void *sqlite3_column_database_name16(sqlite3_stmt*,int);
            const char *sqlite3_column_table_name(sqlite3_stmt*,int);
            const void *sqlite3_column_table_name16(sqlite3_stmt*,int);
            const char *sqlite3_column_origin_name(sqlite3_stmt*,int);
            const void *sqlite3_column_origin_name16(sqlite3_stmt*,int);
            功能:返回列信息?

            const char *sqlite3_column_decltype(sqlite3_stmt *, int i);
            功能:返回列數(shù)據(jù)類型

            int sqlite3_data_count(sqlite3_stmt *pStmt);
            功能:返回?cái)?shù)據(jù)數(shù)量(行數(shù))

             

            const void *sqlite3_column_blob(sqlite3_stmt*, int iCol);
            int sqlite3_column_bytes(sqlite3_stmt*, int iCol);
            int sqlite3_column_bytes16(sqlite3_stmt*, int iCol);
            double sqlite3_column_double(sqlite3_stmt*, int iCol);
            int sqlite3_column_int(sqlite3_stmt*, int iCol);
            sqlite_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol);
            const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);
            const void *sqlite3_column_text16(sqlite3_stmt*, int iCol);
            int sqlite3_column_type(sqlite3_stmt*, int iCol);
            int sqlite3_column_numeric_type(sqlite3_stmt*, int iCol);
            sqlite3_value *sqlite3_column_value(sqlite3_stmt*, int iCol);
            功能:獲取列數(shù)據(jù)


            int sqlite3_create_function(
              sqlite3 *,
              const char *zFunctionName,
              int nArg,
              int eTextRep,
              void*,
              void (*xFunc)(sqlite3_context*,int,sqlite3_value**),
              void (*xStep)(sqlite3_context*,int,sqlite3_value**),
              void (*xFinal)(sqlite3_context*)
            );
            功能:

            const void *sqlite3_value_blob(sqlite3_value*);
            int sqlite3_value_bytes(sqlite3_value*);
            int sqlite3_value_bytes16(sqlite3_value*);
            double sqlite3_value_double(sqlite3_value*);
            int sqlite3_value_int(sqlite3_value*);
            sqlite_int64 sqlite3_value_int64(sqlite3_value*);
            const unsigned char *sqlite3_value_text(sqlite3_value*);
            const void *sqlite3_value_text16(sqlite3_value*);
            const void *sqlite3_value_text16le(sqlite3_value*);
            const void *sqlite3_value_text16be(sqlite3_value*);
            int sqlite3_value_type(sqlite3_value*);
            int sqlite3_value_numeric_type(sqlite3_value*);
            功能:類似sqlite3_column_*函數(shù)

             

             

             

             

            posted on 2011-06-10 16:08 我風(fēng) 閱讀(2895) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2010年10月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(12)

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            收藏夾

            C++

            MyFavorite

            搜索

            •  

            積分與排名

            • 積分 - 327092
            • 排名 - 75

            最新評論

            閱讀排行榜

            評論排行榜

            国产毛片久久久久久国产毛片 | 久久精品国产亚洲av瑜伽| 99久久99久久久精品齐齐| 久久国产一区二区| 久久久久人妻一区精品| 午夜久久久久久禁播电影| 国产精品99久久久久久宅男| 亚洲欧美日韩久久精品| 精品久久久久久无码中文字幕一区 | 精品无码久久久久久午夜| 国内精品欧美久久精品| 久久精品国产乱子伦| 国产高潮久久免费观看| 久久综合狠狠综合久久综合88| 91麻精品国产91久久久久| 久久天天躁狠狠躁夜夜avapp| 久久这里只精品国产99热| 一本久久a久久精品亚洲| 久久精品国产99久久丝袜| 国产精品美女久久久m| 久久精品国产男包| 久久久精品国产亚洲成人满18免费网站 | 人妻精品久久无码区| 亚洲七七久久精品中文国产| 国产69精品久久久久99尤物| 久久精品国产亚洲AV香蕉| 东方aⅴ免费观看久久av| 香蕉久久夜色精品国产尤物| 久久夜色撩人精品国产| 国内精品欧美久久精品| 久久九九免费高清视频| 国产高潮国产高潮久久久91| 久久综合欧美成人| 国产精品欧美亚洲韩国日本久久 | 亚洲愉拍99热成人精品热久久| 久久伊人五月天论坛| 久久久久18| 久久丫忘忧草产品| 久久亚洲中文字幕精品有坂深雪 | 亚洲狠狠综合久久| 亚洲午夜精品久久久久久人妖|