• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            在VC6下用SQLite開發(fā)零配置的數(shù)據(jù)庫(kù)應(yīng)用

            系統(tǒng)環(huán)境: XP + VC6.0 sp6

            SQLite是一款非常適合嵌入式應(yīng)用的數(shù)據(jù)庫(kù),小巧、快速和可靠。真正的開源免費(fèi),不保留任何版權(quán)(Public Domain)。它無(wú)需運(yùn)行額外的服務(wù)器進(jìn)程,用它來(lái)開發(fā)桌面數(shù)據(jù)庫(kù)的應(yīng)用,似乎比MS Access更顯得簡(jiǎn)潔。


            【一. 生成SQLite庫(kù)文件】
            新建“C:\mylibs\libSQLite3”目錄,將它作為我們的當(dāng)前工作目錄。

            (1)
            SQLite的官方網(wǎng)站下載Windows平臺(tái)下的3.5.4版本的SQLite, 下載地址:
            http://www.sqlite.org/sqlitedll-3_5_4.zip
            解壓縮其中的“sqlite3.def”“sqlite3.dll”兩個(gè)文件到“C:\mylibs\libSQLite3\”
            打開命令提示符窗口,用LIB命令生成用于連接(LINK)使用的lib文件:
            CD C:\mylibs\libSQLite3
            LIB /DEF:sqlite3.def /machine:IX86
            這樣將生成“sqlite3.lib”“sqlite3.exp”兩個(gè)文件。

            (2)
            SQLite官方網(wǎng)站下載SQLite3的源程序, 下載地址:
            http://www.sqlite.org/sqlite-source-3_5_4.zip
            解壓出其中的“sqlite3.h”文件到“C:\mylibs\libSQLite3\”

            (3)
            檢查文件清單,此時(shí)“C:\mylibs\libSQLite3\”目錄下應(yīng)該有如下五個(gè)文件:
            sqlite3.def
            sqlite3.dll
            sqlite3.exp
            sqlite3.h
            sqlite3.lib
            【二. 編寫示例程序】

            (1)打開VC6.0,創(chuàng)建一個(gè)空的“Win32控制臺(tái)應(yīng)用程序項(xiàng)目,名為“sqlitedemo”,在“D:\VCStudio\sqlitedemo”目錄下。

            (2)Project→Settings,在Link選項(xiàng)卡,“Category”選擇“General”,在“Object/library modules”的最后填入“sqlite3.lib”,注意用空格分隔各項(xiàng)。

            (3)“l(fā)ibSQLite3”目錄及其包含的文件復(fù)制到我們的工程目錄。再將“l(fā)ibSQLite3”目錄下的“sqlite3.lib”“ sqlite3.dll”文件移動(dòng)到工程目錄下。

            這樣,在需要用到“sqlite”庫(kù)的CPP文件頂部,加入一行:
            #include "sqlite3.h"
            然后,就可以在文件中調(diào)用sqlite3.dll里面的所有函數(shù)了。

            (4)建立示例數(shù)據(jù)庫(kù)。打開命令提示符窗口,切換到工程目錄。執(zhí)行:
            D:\VCStudio\sqlitedemo>sqlite3 app.db
            SQLite version 3.5.4
            Enter ".help" for instructions
            sqlite> CREATE TABLE t1(c1 TEXT);
            sqlite> INSERT INTO t1 VALUES('Hello World!');
            sqlite> SELECT * FROM t1;
            Hello World!
            sqlite> .exit

            (5)新建“C++源文件,名為“sqlitedemo.cpp”,選擇加入工程,編寫代碼
            #include <stdio.h>
            #include <stdlib.h>

            #include ".\libSQLite3\sqlite3.h"

            static int _callback_exec(void * notused,int argc, char ** argv, char ** aszColName)
            {
                int i;
                for ( i=0; i<argc; i++ )
                {
                    printf( "%s = %s\n", aszColName[i], argv[i] == 0 ? "NUL" : argv[i] );
                }

                return 0;
            }

            int main(int argc, char * argv[])
            {
                const char * sSQL = "select * from t1;";
                char * pErrMsg = 0;
                int ret = 0;
                sqlite3 * db = 0;
               
                ret = sqlite3_open("./app.db", &db);

                if ( ret != SQLITE_OK )
                {
                    fprintf(stderr, "Could not open database: %s", sqlite3_errmsg(db));
                    exit(1);
                }

                printf("Successfully connected to database\n");

                sqlite3_exec( db, sSQL, _callback_exec, 0, &pErrMsg );
                if ( ret != SQLITE_OK )
                {
                    fprintf(stderr, "SQL error: %s\n", pErrMsg);
                    sqlite3_free(pErrMsg);
                }

                sqlite3_close(db);
                db = 0;

                return 0;
            }

            “Ctrl+F5”運(yùn)行,結(jié)果:
            Successfully connected to database
            c1 = Hello World!
            Press any key to continue

             

            posted on 2009-06-18 15:20 肥仔 閱讀(995) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)庫(kù)

            亚洲乱亚洲乱淫久久| 久久综合视频网站| 久久99毛片免费观看不卡| 99久久精品免费看国产| 一本久久a久久精品综合香蕉| 久久久精品人妻一区二区三区蜜桃 | 欧美亚洲另类久久综合婷婷| 97久久婷婷五月综合色d啪蜜芽 | 久久777国产线看观看精品| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久久久久人妻无码| 久久精品中文字幕第23页| 蜜臀av性久久久久蜜臀aⅴ| 久久国产精品国语对白| 久久久久久亚洲精品成人| 久久久久99这里有精品10| 99热精品久久只有精品| 久久亚洲精精品中文字幕| 国产偷久久久精品专区| 欧洲性大片xxxxx久久久| 青青青伊人色综合久久| 1000部精品久久久久久久久| 久久婷婷五月综合色奶水99啪 | 狠狠色婷婷综合天天久久丁香| 色综合久久久久综合99| 久久av免费天堂小草播放| 999久久久国产精品| 99久久中文字幕| 久久精品国产亚洲麻豆| 久久无码人妻一区二区三区午夜| 亚洲国产成人久久精品99 | 中文精品久久久久人妻不卡| 伊人久久亚洲综合影院| 一97日本道伊人久久综合影院| 理论片午午伦夜理片久久| 久久久久人妻一区精品| 日本久久中文字幕| 色播久久人人爽人人爽人人片AV| 亚洲欧美另类日本久久国产真实乱对白 | 性做久久久久久久久老女人 | 久久精品国产一区二区三区日韩|