必威电竞|足球世界杯竞猜平台

Derby
來(lái)源:互聯(lián)網(wǎng)

apache Derby是一個(gè)完全用java編寫(xiě)的數(shù)據(jù)庫(kù),Derby是一個(gè)Open source的產(chǎn)品,基于Apache License 2.0分發(fā)。

Apache Derby非常小巧,核心部分derby.jar只有2M,所以既可以做為單獨(dú)的數(shù)據(jù)庫(kù)服務(wù)器使用,也可以內(nèi)嵌在應(yīng)用程序中使用。Cognos 8 BI的Content Store默認(rèn)就是使用的Derby數(shù)據(jù)庫(kù),可以在Cognos8的安裝目錄下看到一個(gè)叫derby10.1.2.1的目錄,就是內(nèi)嵌的10.1.2.1 版本的derby。

發(fā)展歷史

Apache Derby 項(xiàng)目的目標(biāo)是構(gòu)建一個(gè)完全用 Java 編程語(yǔ)言編寫(xiě)的、易于使用卻適合大多數(shù)應(yīng)用程序的開(kāi)放源碼數(shù)據(jù)庫(kù)。可以想像,開(kāi)發(fā)一個(gè)數(shù)據(jù)庫(kù)并不簡(jiǎn)單,apache Derby 數(shù)據(jù)庫(kù)也不例外(因?yàn)樗莻€(gè)開(kāi)放源碼軟件,所以您可以自行查看它)。但是 Derby 項(xiàng)目并不是從零開(kāi)始的。回到 1996 年,一個(gè)叫做 Cloudscape, Inc 的新公司成立了,公司的目標(biāo)是構(gòu)建一個(gè)用 Java 語(yǔ)言編寫(xiě)的數(shù)據(jù)庫(kù)服務(wù)器。公司的第一個(gè)發(fā)行版在一年之后推出,后來(lái)產(chǎn)品的名稱(chēng)變成 Cloudscape。1999 年,Cloudscape, Inc. 被大型數(shù)據(jù)庫(kù)廠商 Informix Software, Inc. 收購(gòu)。

Informix Software 在 2001 年又被 IBM 收購(gòu),然后 IBM Cloudscape? 數(shù)據(jù)庫(kù)系統(tǒng)在許多 IBM 的產(chǎn)品中被用作內(nèi)嵌的數(shù)據(jù)庫(kù)引擎。2004 年 4 月,IBM 把 Cloudscape 數(shù)據(jù)庫(kù)軟件贈(zèng)送給 apache 軟件基金會(huì),從此 Apache Derby 項(xiàng)目誕生了。

這時(shí),Cloudscape 數(shù)據(jù)庫(kù)幾乎已經(jīng)有了 50 萬(wàn)行 Java 代碼,所以花了一些時(shí)間才正確地把它轉(zhuǎn)換成 apache Derby 項(xiàng)目。經(jīng)過(guò)孵化期之后,Derby 于 2005 年 7 月正式發(fā)布。所以雖然看起來(lái)像是新事物,但是 Derby 背后已經(jīng)開(kāi)發(fā)了幾乎十年了。

IBM 繼續(xù)管理 Cloudscape 數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)是從 Apache Derby 源代碼構(gòu)建的。IBM 把 Cloudscape 數(shù)據(jù)庫(kù)作為免費(fèi)下載提供,而且為需要增強(qiáng)信心的客戶提供收費(fèi)的咨詢服務(wù)。另外,Sun Microsystems 已經(jīng)宣布它將包含一個(gè)修補(bǔ)過(guò)的 Apache Derby 版本作為它的 Java 數(shù)據(jù)庫(kù)產(chǎn)品。來(lái)自 IBM 和 Sun 的強(qiáng)大投入,強(qiáng)化了 apache Derby 數(shù)據(jù)庫(kù)的光明前景。Derby 數(shù)據(jù)庫(kù)也符合許多數(shù)據(jù)庫(kù)標(biāo)準(zhǔn),例如 SQL92 和 Java數(shù)據(jù)庫(kù)連接 3.0 版本,所以開(kāi)始用 Derby 數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)的應(yīng)用程序可以容易地移植到其他數(shù)據(jù)庫(kù)系統(tǒng),例如 IBM DB2 通用數(shù)據(jù)。

主要特點(diǎn)

程序小巧,基礎(chǔ)引擎和內(nèi)嵌的JDBC驅(qū)動(dòng)總共大約2MB。

基于Java、JDBC和SQL標(biāo)準(zhǔn)。

提供內(nèi)嵌的JDBC驅(qū)動(dòng),你可把Derby嵌入到基于Java的應(yīng)用程序中。

支持客戶端/服務(wù)器模式。

安裝、布置和使用簡(jiǎn)單。

使用技巧

配置環(huán)境變量

建立DERBY_HOME,值:E:\Java\Joy\derby\db- derby-10.5.3.0-bin\db-derby-10.5.3.0-bin

在Path加入:%DERBY_HOME%\bin

CLASSPATH加入:%DERBY_HOME%\lib \derby.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbytools.jar;%DERBY_HOME%\lib\derbynet.jar

創(chuàng)建數(shù)據(jù)庫(kù)

打開(kāi)命令行,進(jìn)入想要放置數(shù)據(jù)庫(kù)的目錄,我的是:E:\Java\Joy \derby\Derby_data

然后輸入ij

將會(huì)看到:

ij 版本 10.5

ij>

接下來(lái)就可以創(chuàng)建數(shù)據(jù)庫(kù)了。

例:

1、創(chuàng)建firstdb數(shù)據(jù)庫(kù):

ij> connect 'Java數(shù)據(jù)庫(kù)連接:derby:firstdb;create=true';

連接firstdb數(shù)據(jù)庫(kù):

ij> connect 'jdbc:derby:firstdb';

查詢數(shù)據(jù)庫(kù)等操作,只需要輸入相應(yīng)的SQL即可。

2、創(chuàng)建一個(gè)table:

create table firsttable(id int primary key, name varchar(20));

3、插入數(shù)據(jù):

insert into firsttable values(1, 'Hotpepper');

在命令行測(cè)試一下:

select * from firsttable;

結(jié)果如下:

ID |NAME

——————————–

1 |Hotpepper

斷開(kāi)連接:

ij> disconnect;

退出ij:

ij> exit;

在程序中使用

在Java程序中使用Derby

首先要把相關(guān)的Derby jar包加進(jìn)來(lái)(Build Path)。

如果是Maven工程,加入以下依賴(lài)

把derby-10.5.3.0.jar加進(jìn)來(lái),如果沒(méi)有加進(jìn)來(lái)會(huì)出現(xiàn)“java.lang.ClassNotFoundException: org.apache.derby.jdbc.EmbeddedDriver”錯(cuò)誤

好了,下面寫(xiě)JAVA代碼進(jìn)行測(cè)試:

OK,完成了。

運(yùn)行后控制臺(tái)輸出如下信息:

參考資料 >

生活家百科家居網(wǎng)