九色成人免费视频_久久一区视频_视频一区国产精品_精品视频在线观看

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊(cè)有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁(yè) > 幫助中心>文章內(nèi)容

SQLite的C語(yǔ)言接口

發(fā)布時(shí)間:  2012/9/3 17:14:55

近我正在Linux平臺(tái)寫一個(gè)軟件,需要用到一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)。mysql做數(shù)據(jù)庫(kù)固然很好,但其數(shù)據(jù)是存放在服務(wù)器的。我想要的基本功能也就是使用C程序創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)本地文件,然后可以對(duì)這個(gè)數(shù)據(jù)庫(kù)文件執(zhí)行基本的sql操作. 就像在Windows平臺(tái)基于VC6.0的DAO數(shù)據(jù)庫(kù)編程一樣(創(chuàng)建一個(gè)本地文件.mdb).
從網(wǎng)上找到了一個(gè)開源免費(fèi)的數(shù)據(jù)庫(kù)開發(fā)工具--sqlite, 網(wǎng)上的關(guān)于sqlite的介紹有很多,詳細(xì)見官方網(wǎng)站:http://www.sqlite.com.cn/ . 我發(fā)現(xiàn)sqlite正是我需要的. 總結(jié)一下幾個(gè)特點(diǎn):-
 

1. 開放源代碼
2. 程序特別小,在windows下應(yīng)用程序sqlite.exe僅僅200kb以內(nèi)。
3. 支持大多數(shù)sql指令,速度極快
4. 直接創(chuàng)建一個(gè)xxx.db, 就是一個(gè)數(shù)據(jù)庫(kù),不需要服務(wù)器支持
5. 簡(jiǎn)潔的C語(yǔ)言API接口

基于上面幾點(diǎn),足可以看出sqlite的強(qiáng)大和優(yōu)異之處。源代碼公開和程序特別小,甚至可以跨平臺(tái)直接編譯"gcc -o sqlite3 *",將這融合到潛入式系統(tǒng)是多么的美妙!

在Ubuntu6.10平臺(tái)安裝sqlite3及其開發(fā)包:
#sudo apt-get install sqlite3 libsqlite3-dev

鏈接這篇文章介紹了sqlite的使用方法:
http://www.sqlite.com.cn/MySqlite/4/378.Html

下面是我總結(jié)的sqlite3與C接口的API
我用到的主要是下面幾個(gè)函數(shù)(頭文件sqlite3.h):
int sqlite3_open(const char*, sqlite3**); //打開一個(gè)數(shù)據(jù)庫(kù)
int sqlite3_close(sqlite3*); //關(guān)閉
int sqlite3_exec(sqlite3*, const char *sql, sqlite_callback, void*, char**);//執(zhí)行
int sqlite3_get_table(sqlite3*, const char *sql,char***result, int *nrow,int *ncolumn ,char **errmsg );
 //result中是以數(shù)組的形式存放所查詢的數(shù)據(jù),首先是表名,再是數(shù)據(jù);
 //nrow/ncolumn分別為查詢語(yǔ)句返回的結(jié)果集的行數(shù)/列數(shù),沒有查到結(jié)果時(shí)返回0
sqlite3_errcode() 通常用來(lái)獲取最近調(diào)用的API接口返回的錯(cuò)誤代碼.
sqlite3_errmsg() 則用來(lái)得到這些錯(cuò)誤代碼所對(duì)應(yīng)的文字說(shuō)明.

exec錯(cuò)誤碼
#define SQLITE_OK           0   /* Successful result */
#define SQLITE_ERROR        1   /* SQL error or missing database */
#define SQLITE_INTERNAL     2   /* An internal logic error in SQLite */
#define SQLITE_PERM         3   /* Access permission denied */
#define SQLITE_ABORT        4   /* Callback routine requested an abort */
#define SQLITE_BUSY         5   /* The database file is locked */
#define SQLITE_LOCKED       6   /* A table in the database is locked */
#define SQLITE_NOMEM        7   /* A malloc() failed */
#define SQLITE_READONLY     8   /* Attempt to write a readonly database */
#define SQLITE_INTERRUPT    9   /* Operation terminated by sqlite_interrupt() */
#define SQLITE_IOERR       10   /* Some kind of disk I/O error occurred */
#define SQLITE_CORRUPT     11   /* The database disk image is malformed */
#define SQLITE_NOTFOUND    12   /* (Internal Only) Table or record not found */
#define SQLITE_FULL        13   /* Insertion failed because database is full */
#define SQLITE_CANTOPEN    14   /* Unable to open the database file */
#define SQLITE_PROTOCOL    15   /* Database lock protocol error */
#define SQLITE_EMPTY       16   /* (Internal Only) Database table is empty */
#define SQLITE_SCHEMA      17   /* The database schema changed */
#define SQLITE_TOOBIG      18   /* Too much data for one row of a table */
#define SQLITE_CONSTRAINT  19   /* Abort due to contraint violation */
#define SQLITE_MISMATCH    20   /* Data type mismatch */
#define SQLITE_MISUSE      21   /* Library used incorrectly */
#define SQLITE_NOLFS       22   /* Uses OS features not supported on host */
#define SQLITE_AUTH        23   /* Authorization denied */
#define SQLITE_ROW         100  /* sqlite_step() has another row ready */
#define SQLITE_DONE        101  /* sqlite_step() has finished executing */
應(yīng)用實(shí)例:

定義
sqlite3 *db = NULL;
char * errMsg = NULL;
char sql_cmd[200];

打開文件:
int rc = sqlite3_open("xxx.db", &db);
if(rc) //打開失敗
      printf("Open database failed!\n");
  else
    printf("create the database successful!\n");

建立表格:
     sprintf(sql_cmd,"CREATE TABLE datapro(package INTEGER,offset \
       INTEGER,lklen INTEGER,base INTEHER,link INTEGER,err INTEGER);");
     rc=sqlite3_exec(db,sql_cmd,0,0,&eMsg); //建立表datapro
     if(rc==SQLITE_OK) //建表成功
           printf("create the chn_to_eng table successful!\n");
      else
           printf("%s\n",eMsg);
添加數(shù)據(jù):
   sprintf(sql_cmd,"INSERT INTO datapro VALUES(%d,%d,%d,%d,%d,%d);",4,2345,268,9,3,3);
   rc=sqlite3_exec(pro_db,pro_sqlcmd,0,0,&eMsg);

查詢:
 int nrow=0, ncolumn=0;
 char **azResult; //存放結(jié)果
 sql="SELECT * FROM datapro";
 sqlite3_get_table(db,sql,&azResult,&nrow,&ncolumn,&eMsg);
//其中nrow為行數(shù),ncolum為列數(shù)
 printf("\nThe result of querying is : \n");
 for(int i=1;i<nrow+1;i++)
 {
     for(int j=0;j<ncolumn;j++)
         printf("%s    ",azResult[i*ncolumn+j]);
      printf("\n");
 }

刪除:
 sprintf(sql_cmd,"DELETE FROM datapro WHERE package=1;") ;
 rc=sqlite3_exec(db,sql,0,0,&eMsg);


本文出自:億恩科技【www.23lll.com】

服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
  • 專注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號(hào)
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問(wèn):河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
      0
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線

     
     
    九色成人免费视频_久久一区视频_视频一区国产精品_精品视频在线观看
    亚洲视频久久| 日韩视频免费观看高清完整版| 一区二区在线不卡| 国产视频在线观看一区二区| 国产精品va在线播放我和闺蜜| 欧美成人中文| 欧美成人午夜激情视频| 麻豆亚洲精品| 模特精品在线| 欧美gay视频| 美女久久一区| 欧美成人午夜影院| 女人香蕉久久**毛片精品| 久久精品水蜜桃av综合天堂| 欧美夜福利tv在线| 欧美一区二区三区视频免费播放 | 亚洲精品日韩一| 亚洲欧洲在线一区| 日韩小视频在线观看专区| 亚洲精品一区二区三区福利| 日韩视频在线播放| 亚洲无限av看| 亚洲欧美日韩综合aⅴ视频| 亚洲欧美视频一区二区三区| 香蕉免费一区二区三区在线观看| 性色av香蕉一区二区| 欧美在线视频一区| 久久伊人亚洲| 欧美日韩mp4| 国产精品qvod| 国产日韩一区二区三区在线| 狠狠色综合播放一区二区| 在线免费观看日本一区| 91久久在线播放| 中文精品视频一区二区在线观看| 亚洲夜间福利| 久久黄金**| 亚洲最新在线| 亚洲欧美一区二区三区久久| 久久国产精品99精品国产| 久久综合给合久久狠狠色 | 欧美激情网站在线观看| 欧美肉体xxxx裸体137大胆| 欧美日韩日韩| 亚洲电影免费在线观看| 亚洲人成免费| 亚洲国产精品第一区二区| 亚洲激情婷婷| 亚洲视频导航| 欧美在线1区| 亚洲日本中文| 亚洲一区三区在线观看| 欧美一区二区福利在线| 久久精品在线播放| 欧美成人激情视频免费观看| 欧美国产视频日韩| 欧美视频一二三区| 国产一区二区0| 亚洲国产三级网| 亚洲午夜久久久久久尤物| 亚洲女人天堂av| 亚洲国产成人在线播放| 亚洲天堂免费观看| 久久久国产亚洲精品| 欧美日本簧片| 国产伦精品一区二区三区免费 | 欧美日韩亚洲网| 国产午夜精品久久久| 亚洲高清免费在线| 亚洲影音先锋| 亚洲乱码国产乱码精品精98午夜| 亚洲欧美大片| 欧美顶级少妇做爰| 国产乱码精品| 亚洲精品视频在线播放| 欧美一区二区三区免费在线看 | 小黄鸭视频精品导航| 欧美成人精品激情在线观看| 欧美视频中文在线看| 黄色国产精品| 亚洲一二三四区| 99在线精品观看| 久久疯狂做爰流白浆xx| 欧美色另类天堂2015| 激情校园亚洲| 亚洲欧美日韩综合一区| 宅男噜噜噜66一区二区| 老司机精品久久| 国产日韩亚洲| 亚洲网站啪啪| 亚洲精品自在在线观看| 久久久久久亚洲综合影院红桃| 国产精品超碰97尤物18| 亚洲日本成人网| 亚洲国产欧美一区二区三区久久| 欧美一二三视频| 欧美性事在线| 亚洲裸体视频| 亚洲免费成人| 欧美+亚洲+精品+三区| 国产情人综合久久777777| 亚洲毛片视频| 亚洲免费av片| 蜜臀99久久精品久久久久久软件| 国产精品一区二区久久久久| 亚洲裸体视频| 日韩午夜激情电影| 欧美电影免费观看网站| 在线观看成人网| 欧美一区二区三区另类| 午夜精品久久久久久久男人的天堂| 欧美日韩午夜| 亚洲精品影院在线观看| 亚洲精品一区二区在线观看| 久久一区免费| 在线 亚洲欧美在线综合一区| 久久高清国产| 久久夜色精品国产噜噜av| 国产综合久久| 欧美一区二区在线免费播放| 欧美伊人久久久久久午夜久久久久 | 亚洲网站视频| 欧美日韩综合另类| 这里只有精品在线播放| 亚洲综合精品| 国产精品美女久久久久久免费| 国产精品99久久久久久久久久久久| 亚洲无玛一区| 国产精品久久久久久户外露出 | 欧美一区二区三区视频在线| 久久久精品2019中文字幕神马| 国产自产精品| 亚洲激情网址| 欧美成人一二三| 99国产一区| 午夜精品久久久久久久蜜桃app| 国产精品亚洲美女av网站| 校园春色国产精品| 久久人人97超碰国产公开结果| 精品1区2区3区4区| 亚洲人成啪啪网站| 欧美日韩精品国产| 亚洲一区欧美二区| 久久久精品国产免费观看同学| 国产主播一区二区三区| 亚洲黄页一区| 欧美日本韩国一区二区三区| 亚洲视频第一页| 久久久777| 亚洲日本欧美天堂| 午夜欧美大片免费观看| 好吊色欧美一区二区三区四区| 亚洲精品综合在线| 欧美日韩一区在线播放| 亚洲欧美日韩一区二区三区在线| 久久久久国产精品麻豆ai换脸| 在线高清一区| 亚洲影视在线| 国内精品久久久久久久果冻传媒| 亚洲区在线播放| 国产精品jizz在线观看美国| 欧美影院久久久| 欧美日韩一区二| 欧美主播一区二区三区美女 久久精品人| 久久精品日韩| 亚洲精品乱码久久久久久日本蜜臀| 亚洲网站视频| 国内揄拍国内精品久久| 这里只有精品在线播放| 国产亚洲成人一区| 99re66热这里只有精品3直播| 国产精品视频你懂的| 亚洲精品欧美日韩专区| 国产精品亚洲一区二区三区在线| 亚洲电影免费观看高清| 欧美视频你懂的| 亚洲国产精品第一区二区三区| 欧美日韩一区三区| 久久精品天堂| 国产精品久久综合| 亚洲精品美女久久久久| 国产精品永久免费| 99pao成人国产永久免费视频| 国产日韩欧美综合在线| 99国产一区二区三精品乱码| 国产亚洲免费的视频看| 一本久道久久综合婷婷鲸鱼| 国产在线拍揄自揄视频不卡99| 一区二区三区四区五区在线| 狠狠爱www人成狠狠爱综合网| 亚洲午夜激情网页| 在线日韩中文| 欧美在线观看网址综合| 夜夜嗨网站十八久久| 你懂的网址国产 欧美| 午夜精品福利一区二区蜜股av| 欧美日韩欧美一区二区| 亚洲国产精品成人va在线观看| 国产精品视频最多的网站| 日韩小视频在线观看|