在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

玩轉SQLite6:使用C語言來讀寫數據庫

碼農愛學習 ? 來源:碼農愛學習 ? 作者:碼農愛學習 ? 2022-09-25 08:52 ? 次閱讀

上篇文章介紹了如何使用Pyhton語言來操作SQLite數據庫,對于嵌入式開發,更多的是使用C/C++語言進行開發,因此,本篇介紹如何使用C語言來操作SQLite數據庫。

1 SQLite C語言API函數

SQLite的C語言API函數的官方文檔地址:https://sqlite.com/capi3ref.html#sqlite3_free

pYYBAGMu-DCAMArpAAPoBmna8CA411.png

對于數據庫的基礎操控,可以先了解以下幾個最基本的API函數:

1.1 打開數據庫 sqlite3_open

該函數用于打開sqlite3數據庫的連接

int sqlite3_open(
  const char *filename,   /* Database filename (UTF-8) */
  sqlite3 **ppDb          /* OUT: SQLite db handle */
);

參數含義:

filename: 數據庫文件名

ppDb: 數據庫handle ,用結構體sqlite3來表示一個打開的數據庫對象

1.2 執行sql語句 sqlite3_exec

int sqlite3_exec(
 sqlite3*,                                  /* An open database */
 const char *sql,                           /* SQL to be evaluated */
 int (*callback)(void*,int,char**,char**),  /* Callback function */
 void *,                                    /* 1st argument to callback */
 char **errmsg                              /* Error msg written here */
);

參數含義:

sqlite3 *: 數據庫句柄

sql: 要執行的sql語句

callback: 回調函數

void *: 回調函數的第一個參數

errmsg: 錯誤信息,如果沒有問題則為NULL

1.3 回調函數

回調函數式一個比較復雜的函數,一般用于sql語句執行后的數據打印,其原型為:

int callback(
    void *params,
    int column_size,
    char **column_value,
    char **column_name
);

參數含義:

params: sqlite3_exec傳入的第四個參數

column_size: 結果字段的個數

column_value: 返回記錄的一位字符數組指針

column_name: 結果字段的名稱

回調函數的通常寫法為:

static int callback(void *data, int argc, char **argv, char **azColName)
{
   int i;
   fprintf(stderr, "%s:n", (const char*)data);
   for(i=0; i;>

運行結果:

poYBAGMu-KKAeR5kAACnikFa9fE463.png

4 總結

本篇簡單介紹了如何使用SQLite的C語言API中最基礎的幾個函數,實現對數據庫的讀寫,后續再介紹其它常用的C語言API函數的用法。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7614

    瀏覽量

    137827
  • 數據庫
    +關注

    關注

    7

    文章

    3852

    瀏覽量

    64724
  • SQlite
    +關注

    關注

    0

    文章

    80

    瀏覽量

    16040
收藏 人收藏

    評論

    相關推薦

    玩轉SQLite5:使用Python讀寫數據庫

    本篇介紹了如何使用**Python**語言進行SQLite數據庫讀寫,在嵌入式式開發中,更多的是使用**
    的頭像 發表于 09-25 08:51 ?1927次閱讀
    <b class='flag-5'>玩轉</b><b class='flag-5'>SQLite</b>5:使用Python<b class='flag-5'>來</b><b class='flag-5'>讀寫</b><b class='flag-5'>數據庫</b>

    如何使用Rust語言操作Chrome瀏覽器的SQLite數據庫

    的瀏覽器,它使用SQLite數據庫存儲瀏覽器的歷史記錄、書簽、密碼等數據。在本教程中,我們將介紹如何使用Rust語言操作Chrome瀏覽器
    的頭像 發表于 09-19 16:28 ?2564次閱讀

    Wince系統基于數據庫Sqlite的應用

    覺得有點象,但是事實上它們區別很大。比如SQLite 支持跨平臺,操作簡單,能夠使用很多語言直接創建數據庫,而不象Access一樣需要Office的支持。如果你是個很小型的應用,或者你想做嵌入式開發
    發表于 07-18 11:31

    LabVIEW訪問SQLite數據庫接口研究

    的操作系統,同時能夠跟很多程序語言相結合,比如Tcl、C#、PHP、Java等,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數據庫管理系統來講,它的處理速度比他們都快。更多介紹可訪問其
    發表于 02-04 13:38

    Labview基于JKI SMO框架Sqlite輕量數據庫讀寫

    本帖最后由 Harry2017 于 2021-1-18 20:30 編輯 Labview讀寫Sqlite數據庫,基于JKI SMO框架面向對象框架方式讀寫
    發表于 01-10 19:11

    嵌入式數據庫sqlite移植及使用的資料分享

    ,掌握 sqlite 數據庫軟件移植的步驟,掌握 sqlite 開發的兩種方式 — 命令模式和 C代碼開發模式 的使用方法,并編程實現簡單通訊錄查詢實驗。二.實驗內容實驗4.1 移植嵌
    發表于 10-28 09:48

    基于Dragonboard 410c實現sqlite3數據庫存儲與管理

    今天給大家介紹如何利用sqlite3數據庫為dragonboard 410c開發進行數據存儲和管理,s
    發表于 02-08 11:53 ?1213次閱讀

    怎么創建SQLite數據庫

    大家好,今天給大家分享一篇如何創建SQLite數據庫的文章。
    的頭像 發表于 02-22 16:21 ?6103次閱讀
    怎么創建<b class='flag-5'>SQLite</b><b class='flag-5'>數據庫</b>

    SQLite數據庫的特點 SQLite數據庫簡單介紹

    語言,使得SQLite成為非常流行的數據庫管理系統。 SQLite數據庫的特點: 1. 輕量級:SQLi
    的頭像 發表于 08-28 16:40 ?5633次閱讀

    如何創建一個Sqlite數據庫

    如何創建一個Sqlite數據庫Sqlite是一種輕量級、占用空間小、操作速度快的嵌入式數據庫,使用它可以方便地存儲和管理數據
    的頭像 發表于 08-28 16:40 ?4532次閱讀

    什么是Sqlite數據庫

    什么是Sqlite數據庫?? Sqlite數據庫是一種輕量級的關系型數據庫管理系統。它被開源軟件組織SQ
    的頭像 發表于 08-28 16:41 ?2684次閱讀

    SQLite數據庫能加密嗎

    SQLite數據庫能加密嗎? SQLite是一種以文件為基礎的輕量級數據庫管理系統,它被廣泛應用在許多領域,例如移動設備應用程序、桌面應用程序、網絡瀏覽器、機器人和嵌入式系統等。在許多
    的頭像 發表于 08-28 16:41 ?4048次閱讀

    SQLite數據庫能共享嗎?

    SQLite數據庫能共享嗎? SQLite數據庫是一種輕量級的數據庫管理系統,它被廣泛使用于移動應用、本地桌面應用以及小型Web應用中。
    的頭像 發表于 08-28 16:41 ?2841次閱讀

    SQLite數據庫與python的區別

    SQLite數據庫與python的區別 SQLite是一種輕量級關系型數據庫管理系統,是一個嵌入式的數據庫引擎。Python是一種高級編程
    的頭像 發表于 08-28 16:41 ?922次閱讀

    SQLite數據庫增刪改查

    SQLite數據庫增刪改查? SQLite是一種輕量級的RDBMS(關系型數據庫管理系統),具有速度快、易用性高等優點。雖然SQLite
    的頭像 發表于 08-28 17:09 ?1265次閱讀
    主站蜘蛛池模板: 黄网站在线观看高清免费 | 色成年激情久久综合 | 好大好硬好长好爽a网站 | 欧美一区二区视频 | 女人色网| 乱色伦图片区 | 亚洲伊人久久大香线蕉综合图片 | 久久在草 | 五月婷婷色播 | 免费观看理论片毛片 | 四虎永久在线精品2022 | 岛国毛片 | 国内精品久久久久影院免费 | 夜夜夜爽 | 天天免费看片 | 色老成人精品视频在线观看 | 亚洲色图2 | 亚洲午夜久久影院 | 五月激情六月 | 男人的午夜 | h网站免费在线观看 | 久久精品9 | 五月天激激婷婷大综合丁香 | 国产拍拍1000部ww | 午夜性刺激免费视频观看不卡专区 | 中文字幕视频一区 | 狠狠gao| 高清人人天天夜夜曰狠狠狠狠 | 欧美女同在线观看 | 四虎影视网址 | 越南黄色录像 | 久久亚洲精品国产亚洲老地址 | 欧美日韩色综合网站 | h网站免费在线观看 | 免看一级a毛片一片成人不卡 | 手机看片日韩福利 | 色色色色色色色色色色色色 | 亚洲三级在线看 | 日韩亚洲欧洲在线com91tv | 扒开末成年粉嫩的小缝强文 | bt天堂网在线www资源 |