<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 23,comments - 66,trackbacks - 0
    Derby快速上手
    by lostfire

    Derby是IBM送給開源社區(qū)的又一個禮物,是一個pure java的數(shù)據(jù)庫,現(xiàn)在已經(jīng)被列入到j(luò)ava1.6中。
    不知道對于大數(shù)據(jù)量的性能如何,但傳說中啟動derby只會給JVM添加2M的內(nèi)存,對那些小數(shù)據(jù)庫應(yīng)用,比如像用access那種應(yīng)該是挺有誘惑力的。
    另外,麻雀雖小,五臟俱全,功能要比access多得多咯,包括事務(wù)處理,并發(fā),觸發(fā)器都有,管理又簡單,因此自己用來做點工具正好合適。
    廢話少說,介紹一下我折騰了半天的經(jīng)驗吧。
    我的Derby配置過程:
    1,下載db-derby-10.1.3.1-bin.tar.gz,derby_core_plugin_10.1.3.zip和derby_ui_plugin_1.1.0.zip,把兩個插件安裝到eclipse上
    2,打開ecllipse,新建一個project
    3,右鍵這個project,選擇Apache Derby,再選擇add apache derby native,發(fā)現(xiàn)只是給我的project添加了幾個derby的jar,還不是在我看著順眼的lib目錄里,索性干掉,換上db-derby- 10.1.3.1-bin.tar.gz解壓出來以后lib目錄下的jar文件,在Build Path里設(shè)置一下;
    4,右鍵Project,在apache derby里選擇start apache derby network server,控制臺可以看到derby啟動后打出的“服務(wù)器準(zhǔn)備在端口 1527 上接受連接。”
    5,右鍵Project,在apache derby里選擇ij(Interactive SQL),啟動SQL控制臺;
    6,輸入connect 'jdbc:derby:testdb;create=true'; 注意要有單引號,可以在工程跟目錄下創(chuàng)建testdb數(shù)據(jù)庫,可以看到一個新建的目錄testdb,那里的文件就是數(shù)據(jù)庫咯;
    7,用標(biāo)準(zhǔn)的SQL語句來建一個數(shù)據(jù)庫試試:
    create table test (a varchar(4) not null, b char(2) primary key);
    居然可以用,太神奇了,呵呵
    8,再插入一條語句試試呢,insert into test(a,b) values('a','11');,嗯,不錯,可以用select 查出來的哦。
    9,再插一下:insert into test(a,b) values('a','11');,哦哦,報錯了,“錯誤 23505:語句異常終止,因為它導(dǎo)致“TEST”上所定義的“SQL060710092132480”標(biāo)識的唯一或主鍵約束或唯一索引中出現(xiàn)重復(fù)鍵值。” 呵呵。
    10,好了,現(xiàn)在可以像你控制的其他數(shù)據(jù)庫一樣來控制Derby了。


    如果上述方法不行,或者你習(xí)慣了在eclipse之外使用和管理數(shù)據(jù)庫,那么可以很方便的把Derby“裝”在系統(tǒng)里。下面我說一下步驟:
    1,把db-derby-10.1.3.1-bin.tar.gz解壓到c:\derby,使lib和framework兩個目錄在c:\derby下邊即可
    2,設(shè)置環(huán)境變量
    • 設(shè)置一個c:\derby\framework\embeded\bin或c:\derby\framework\NetworkServe\bin到Path中,這樣我們就可以直接執(zhí)行上邊介紹的connect這樣的命令而不用每次鉆到那個目錄下去執(zhí)行了
    • 設(shè)置c:\derby\lib\derby.jar;c:\derby\lib\derbytoos.jar到CLASSPATH中,以便讓這些java編成的命令能夠正確執(zhí)行;
    3,打開cmd
    4,敲入startNetworkServer,可以看到像在eclisp中提示的那樣啟動了server
    5,再打開一個cmd,敲入sysinfo,可以看到derby的環(huán)境信息了,注意在java user dir這一項,也許是java用戶目錄上和上邊看到的會有所不同哦,這樣在connect 'jdbc:derby:testdb;create=true';的建的數(shù)據(jù)庫目錄就不一樣咯。
    6,敲入ij,好了,進入到上邊的交互界面,可以建一個數(shù)據(jù)庫看看了。
    7,最后在另外一個cmd中敲入stopNetworkServer就可以關(guān)閉數(shù)據(jù)庫了。

    如果你兩種方法都試過了,那么需要注意的,還是上邊步驟5的問題,這個問題是你可能隨時會啟動一個數(shù)據(jù)庫或新建一個數(shù)據(jù)庫,但如果你剛剛使用derby,你可能還沒有察覺。
    derby實際上有兩種啟動方式,一種是嵌入式的,一種是網(wǎng)絡(luò)服務(wù)器的啟動。
    1,我們在eclipse中右鍵start apache derby network server那個,就是網(wǎng)絡(luò)服務(wù)器的啟動方式,在這種方式下可以用另外一臺計算機在ij中以:
    connect 'jdbc:derby://192.168.0.28:1527/testdb'
    的方式進行鏈接。
    2,第二種啟動方式是在ij里邊就直接
    connect 'jdbc:derby:testdb'
    這實際是在連當(dāng)前配置環(huán)境java user dir下那個目錄的數(shù)據(jù)庫。

    看到這里可能有點糊涂了,這么就會出問題了那?
    實際上derby的訪問更像是一種使用derby driver對本地文件系統(tǒng)的訪問,不管啟動不啟動網(wǎng)絡(luò)服務(wù)器,都可以用driver訪問本地的數(shù)據(jù)庫。這樣,在ij里邊像第二種方式那樣建立連接是完全可以的。啟動了網(wǎng)絡(luò)服務(wù)器,只不過是能夠讓其他主機訪問罷了。

    另外一個問題是,在eclipse中和在系統(tǒng)中連接服務(wù)器,在connect的時候這個當(dāng)前配置環(huán)境是不一樣的,eclipse默認工程所在路徑是數(shù)據(jù)庫的所在路徑,而在系統(tǒng)中“裝”derby則會認為 c:\document and settings下邊那個用戶目錄是數(shù)據(jù)庫的所在路徑。

    未完待續(xù).....
    posted on 2006-07-10 22:47 rd2pm 閱讀(2182) 評論(3)  編輯  收藏 所屬分類: other

    FeedBack:
    # re: Derby快速上手
    2006-08-23 19:11 | 朱江波
    我剛接觸jsp,請教一下。
    我用的wtp all in one 的eclipse,如果用derby數(shù)據(jù)庫,還用上面的那些配置 嗎?  回復(fù)  更多評論
      
    # re: Derby快速上手
    2006-08-24 08:45 | lostfire
    這樣連是很好用的方法,也很方便調(diào)試,wtp是否需要要看里邊有沒有db connector吧  回復(fù)  更多評論
      
    # re: Derby快速上手
    2007-02-05 00:08 | cxz
    怎么裝derby呀,我什么方法都詩了,為什么我點擊右鍵就出不來那個Apache Derby菜單呀 :cry: :cry: :cry: 我的郵箱pire_cao@163.com,幫忙呀~~~~~~~~~~~  回復(fù)  更多評論
      

    主站蜘蛛池模板: 1区2区3区产品乱码免费| 国产乱子伦精品免费视频| 男人j进入女人j内部免费网站| 国产成人精品免费视频软件| 亚洲国产精品综合久久20| 免费无码又爽又刺激高潮| 亚洲国产成人精品无码一区二区| 91在线老王精品免费播放| 亚洲综合久久成人69| 1a级毛片免费观看| 亚洲偷偷自拍高清| 日韩中文字幕在线免费观看| 色欲aⅴ亚洲情无码AV蜜桃| 国产日产成人免费视频在线观看| 国产精品亚洲va在线观看| 亚洲国产精品无码久久九九| 国产激情久久久久影院老熟女免费| 最新国产AV无码专区亚洲| 免费网站看av片| 亚洲免费在线视频播放| 国产精品高清全国免费观看| 亚洲免费无码在线| 亚洲欧洲日韩国产综合在线二区| 国产福利视精品永久免费| 亚洲熟妇自偷自拍另欧美| 免费jlzzjlzz在线播放视频| 国产免费一级高清淫曰本片| 亚洲高清在线视频| 曰批免费视频播放免费| 国产亚洲色婷婷久久99精品91| 女人体1963午夜免费视频| 亚洲人成网男女大片在线播放| 四虎影视永久免费观看地址| 岛国精品一区免费视频在线观看| 国产伦一区二区三区免费| 中文在线观看免费网站| 亚洲午夜精品在线| 日批日出水久久亚洲精品tv| 免费精品国产自产拍在线观看| 亚洲国产精品无码中文字| 免费无码又爽又刺激聊天APP|