“德比”[資料庫管理系統]

Derby是Apache一個開源的、100% Java編寫的、與平台無關的、易管理的關係資料庫管理系統。

同名系統

Derby為用戶提供了輕量的標準資料庫引擎,它可以緊密的嵌入到任何基於Java的解決方案中。Derby確保數據完整性,並提供負責的事務處理操作。默認的配置中不包含任何獨立的資料庫伺服器。同時,Derby 的安裝過程非常簡單,只需要將其 .jar 檔案複製到系統中並為您的項目添加該 .jar 檔案即可。

Derby擁有一個令人驚奇的特性列表。它可以支持關係資料庫中的所有企業級的特性,包括崩潰恢復、事務回滾和提交、行/表級鎖、視圖、主鍵/外鍵約束、觸發器、子查詢表達式,等等。一部分的列表特性使Derby從其他的Java 關係資料庫管理系統中分離出來。

Derby可以有兩種部署方式:

嵌入式:Derby被單個用戶的Java應用程式使用,在這種模式下,Derby和應用程式運行在同一個JVM中。Derby對於終端用戶幾乎是透明的,因為它的啟動和終止都是由應用程式來控制,而不需要任何的管理。

伺服器模式:Derby由應用程式啟動,此時通過用戶可以通過網路連線。在這種模式下,Derby運行在伺服器主機的JVM中。其他JVM的應用程式通過連線伺服器來訪問資料庫。

Derby資料庫

Derby資料庫是一個純用Java實現的記憶體資料庫,屬於Apache的一個開源項目。由於是用Java實現的,所以可以在任何平台上運行;另外一個特點是體積小,免安裝,只需要幾個小jar包就可以運行了。

Derby資料庫入門

1,下載並安裝Derby:

下載地址: ,下載最新版本。

我用的是10.5.3.0。

解壓縮到任意資料夾,我的是:E:\Java\Joy\derby

2,配置環境變數:

建立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

3,測試看看Derby安裝成功沒有

開始—Run—CMD

運行 sysinfo

如果安裝成功,將會看到相關信息,下面是截取的部分信息。

——— Derby 信息 ——–

JRE – JDBC: Java SE 6 – JDBC 4.0

[E:\Java\Joy\derby\db-derby-10.5.3.0-bin\db-derby-10.5.3.0-bin\lib\derby.jar] 10

.5.3.0 – (802917)

[E:\Java\Joy\derby\db-derby-10.5.3.0-bin\db-derby-10.5.3.0-bin\lib\derbytools.ja

r] 10.5.3.0 – (802917)

[E:\Java\Joy\derby\db-derby-10.5.3.0-bin\db-derby-10.5.3.0-bin\lib\derbynet.jar]

10.5.3.0 – (802917)

[E:\Java\Joy\derby\db-derby-10.5.3.0-bin\db-derby-10.5.3.0-bin\lib\derbyclient.j

ar] 10.5.3.0 – (802917)

4,創建和使用資料庫

打開命令行,進入想要放置資料庫的目錄,我的是:E:\Java\Joy \derby\Derby_data

然後輸入ij

將會看到:

ij 版本 10.5

ij>

接下來就可以創建資料庫了。

例:

創建firstdb資料庫:

ij> connect ‘jdbc:derby:firstdb;create=true’;

連線firstdb資料庫:

ij> connect ‘jdbc:derby:firstdb’;

查詢資料庫等操作,只需要輸入相應的Sql語句即可。

創建一個table:

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

插入數據:

insert into firsttable values(1, ‘Hotpepper’);

在命令行測試一下:

select * from firsttable;

結果如下:

ID |NAME

——————————–

1 |Hotpepper

其它命令

下線:

ij> disconnect;

退出ij:

ij> exit;

5,在Java程式中使用Derby

首先要把相關的Derby jar包加進來(Build Path)。

把derby.jar加進來,如果沒有加進來會出現 “java.lang.ClassNotFoundException: org.apache.derby.jdbc.EmbeddedDriver”錯誤

好了,下面寫JAVA代碼進行測試:

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class Test {

private static String driver = “org.apache.derby.jdbc.EmbeddedDriver”;

private static String protocol = “jdbc:derby:”;

String dbName = “E:\\Java\\Joy\\derby\\Derby_data\\firstdb”;

static void loadDriver() {

try {

Class.forName(driver).newInstance();

System.out.println(“Loaded the appropriate driver”);

} catch (Exception e) {

e.printStackTrace();

}

}

public void doIt() {

Connection conn = null;

Statement s = null;

ResultSet rs = null;

System.out.println(“starting”);

try {

conn = DriverManager.getConnection(protocol + dbName

+ “;create=true”);

} catch (SQLException e) {

e.printStackTrace();

}

System.out.println(“Connected to and created database ” + dbName);

try {

s=conn.createStatement();

rs=s.executeQuery(“select * from firsttable”);

while (rs.next()) {

System.out.println(rs.getInt(1));

System.out.println(rs.getString(2));

}

} catch (SQLException e1) {

e1.printStackTrace();

}

try {

conn.close();

conn = null;

s.close();

s = null;

rs.close();

rs = null;

} catch (Exception e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

Test t = new Test();

t.loadDriver();

t.doIt();

}

}

相關詞條

熱門詞條

聯絡我們