• <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次 | 進入軟件測試論壇討論

    領測軟件測試網

     

    下面這段簡單代碼演示如何將數據存入到數據庫中,然后再用游標對象瀏覽全部數據。

    //注意,下面的程序的忽略了對異常處理,寫入數據初始化等等一些代碼,請在適當修改后再編
    //譯運行它
    Db dbFile = null;
    //生成Db對象
    dbFile = new Db(null, 0);
    //用BTree方式打開數據庫,庫文件是在c:/temp下的mydata.db文件,表名是employee
    //如果數據庫不存在,則自動生成一個新的數據庫。
    dbFile.open(null,"c:\\temp\\mydata.db","employee",Db.DB_BTREE,
    Db.DB_CREATE,0);
    Dbt key = new Dbt();
    Dbt data = new Dbt();
    //向庫文件中插入一條數據,如果已經存在,打印出錯信息
    if (dbFile.put(null,key, data, Db.DB_APPEND) == Db.DB_KEYEXIST) {
    System.out.println("Key already exists.");
    }
    //關閉數據文件
    dbFile.close(0);
    //重新打開數據文件
    dbFile = new Db(null, 0);
    dbFile.open(null, "c:\\temp\\mydata.db", "employee", Db.DB_UNKNOWN,
    0, 0644);
    // 聲明一個數據庫游標Dbc對象iterator
    Dbc iterator = dbFile.cursor(null, 0);
    // 遍歷整個表
    Dbt key = new Dbt();
    while (iterator.get(key, data, Db.DB_NEXT) == 0)
    {
    System.out.println("reading");
    }
    //關閉游標和數據文件
    iterator.close();
    dbFile.close(0);

      在運行Berkeley DB的程序時勿必在系統環境變量PATH中設置libdb41.dll和 libdb_java41.dll所在的路徑。

      4. Berkeley DB的存儲模式

      Berkeley DB提供了四種存儲數據的模式:Btree,Hash,Queue和Recno。在打開數據庫的時候要指定一種存儲模式,比如上例中open()方法中的參數Db.DB_BTREE就是指定以Btree模式打開數據庫。

      Btree模式是以排序的二叉樹的方式存儲,Hash是以線性哈希表的方式存儲。Queue用邏輯記錄號做為鍵值,以定長的數據為記錄值。Recno方式也以邏輯記錄號做為鍵值,但可以保存定長或變長的記錄值。這里提到的邏輯記錄號有兩種,可變的和固定的?勺冞壿嬘涗浱枙鶕䲠祿涗浀脑黾优c刪除做相應的變化。比如在數據庫中共有100條記錄,如果刪除第80條記錄,那么第81條記錄的邏輯記錄號會自動變成80,以此類推,第100條記錄邏輯記錄號會變成99。固定的邏輯記錄號則無論數據庫如何操作都不會有變化。Queue模式下,邏輯記錄號只能是固定方式。

      Recno模式則可通過配置來選擇是采用那種類型的記錄號作為鍵值。Btree模式也可以通過設置,將可變的邏輯記錄號做為鍵值。

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

    52/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>