• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    嵌入式數據庫在Java中的應用

    發布: 2008-4-28 10:29 | 作者: 不詳 | 來源: csai | 查看: 87次 | 進入軟件測試論壇討論

    領測軟件測試網

     

    參考下面的應用JDBC連接SQLite的例程:

    //聲明JDBC驅動程序
    Class clz = Class.forName("SQLite.JDBCDriver");
    //連接數據庫
    Connection conn = DriverManager.getConnection("jdbc:sqlite:/c:/temp/e2.db");
    Statement stmt = conn.createStatement();
    //生成person表,包含名子和年齡字段
    stmt.execute("create table person (name varchar(100),age int)");
    //插入數據
    stmt.execute("insert into person values('steve',25)");
    //用SQL語句讀出數據
    result = stmt.executeQuery("select * from person");
    while(result.next()){
    System.out.println(result.getString(1));
    System.out.println(result.getInt(2));
    }

      運行程序時要在Java.exe命令行加入選項java.library.path指定到Sqlite_jni.dll所在的路徑。例如,如果Sqlite_jni.dll放在c:\sqliteNative 路徑下面,運行類com.e2one.MyClass 的命令行將會是這樣:java -Djava.library.path=c:\sqliteNative com.e2one.MyClass。

      5. SQLite的特點

      SQLite是無數據類型的數據庫。雖然在生成表結構的時候,要聲明每個域的數據類型,但SQLite并不做任何檢查。開發人員要靠自己的程序控制輸入與讀出數據的類型是正確的。這里有一個例外,就是當主鍵為整型值時,如果要插入一個非整型值時會產生異常。另外,雖然在插入或讀出數據的時候是不區分類型的,但在比較的時候,不同數據類型是有區別的。比如:

    CREATE TABLE MyTable(a INTEGER, b TEXT);
    INSERT INTO MyTable valueS(0,0);

      當執行下面的查詢:

    SELECT count(*) FROM MyTable WHERE a=='00';

      會返回一條記錄,因為字段a的類型是整型,而數字00與0是相等的。

      而執行下面的查詢則不會返回記錄:

    SELECT count(*) FROM MyTable WHERE b=='00';

      因為字段b是字符類型,字符"00"與"0"是不相等的。

      SQLite提供了對Transaction的支持。應用Transaction即保證了數據的完整性,也會提高運行速度,因為多條語句一起提交給數據庫的速度會比一條一條的提交方式更快。

      對二進制數據,SQLite不能直接保存。但可以先將二進制的數據轉換成ASCII編碼,然后再保存。Base64編碼機制是最常見的把二進制數據轉換成ASCII編碼的手段。在SQLite的C語言代碼encode.c中提供了Base64編碼的功能。對Java而言,在參考鏈接六中提供的Apache的XML RPC項目中可以找到一個Base64編碼的例子。

      上面介紹了兩個比較常見的嵌入式數據庫,Berkeley DB速度極快,可靠性高,但學習起來有一定難度。SQLite則簡單易用,速度也很快,又可以應用標準的JDBC連接,但它功能卻照Berkeley略有遜色,比如加密功能、二進制數據的處理等。

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    55/5<12345

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>