資料庫derby
⑴ 什麼工具可以連接derby資料庫
Derby插件工具可以連接derby資料庫
下載Eclipse的Derby插件,包括:derby_core_plugin derby_ui_plugin
解壓縮並復制到eclipse目錄下。重啟Eclipse目錄。滑鼠選擇項目,然後滑鼠右鍵,選擇Properties說明安裝成功。
為項目增加Derby插件支持。選擇Add Apache Derby nature。
然後啟動derby資料庫伺服器。啟動derby資料庫客戶端ij。通過ij創建並連接到伺服器端:
connect 'jdbc:derby://localhost:1527/helloworld;create=true;username=test;password=test';
連接到名為helloworld的資料庫
地址為:localhost:1527
create=true,如果不存在這個資料庫,就在伺服器端創建
username=test;password=test,用戶名/密碼為test,如果是新建資料庫將新建用戶和密碼。
Derby的sql腳本:create.sql,內容:
create table books(
id int generated always as identity,
name varchar(32) not null,
PRICE DECIMAL(6,2),
constraint P_Key_1 primary key (id)
);
執行腳本的命令:
run 'create.sql';
⑵ derby中如何刪除資料庫
使用 TRUNCATE TABLE 刪除所有行,若要刪除表中的所有行,則 TRUNCATE TABLE 語句是一種快速、無日誌記錄的方法。
該語句總是比不帶條件的 DELETE 語句要快,因為 DELETE 語句要記錄對每行的刪除操作,而 TRUNCATE TABLE 語句只記錄整個數據頁的釋放。TRUNCATE TABLE 語句立即釋放由該表的數據和索引佔用的所有空間。所有索引的分發頁也將釋放。
與 DELETE 語句相同,使用 TRUNCATE TABLE 清空的表的定義,同其索引和其它相關的對象一起仍保留在資料庫中。
必須使用 DROP TABLE 語句才能除去表的定義。
⑶ java操作derby資料庫和操作sql資料庫有什麼區別
import java.sql.ResultSet; //都是導入一些下面需要用到的類
String ConnStr="jdbc:microsoft:sqlserver://WINJUE:1433;DatabaseName=library";//jdbc連接資料庫url
public sqlServer() {
try {
Class.forName(DBDriver).newInstance(); //載入SQLServer驅動程序,DBDriver是你上面的代碼;
conn=DriverManager.getConnection(ConnStr,"sa","sa"); //和資料庫建立連接,ConnStr裡面的://WINJUE:1433;DatabaseName=library 分別是主機地址:埠號;你自己建的資料庫(database)
}
catch(SQLException e) { //捕獲SQL異常
System.out.println(e.getMessage()); //要是出現異常,捕獲到後,這句代碼會把異常的信息(出錯的原因之類的)列印出來。
}
catch(Exception e) { //捕獲異常,這個是總的,所以不能和上面的順序顛倒,先小到大,我連ORACLE和MYSQL,這個我通常不要,只須捕獲SQL異常就OL
System.out.println(e.getMessage());
}
}
public Connection getConn(){ //獲取連接方法
return conn;
}
public void insert(String sql) {//增刪改
try {
Statement stm=conn.createStatement(); 調用conn下的方法,創建Statement對象
stm.executeUpdate(sql);//調用Statement下的方法執行SQL語句
System.out.println("操作成功");
}
catch(Exception e){
System.out.println(e.getMessage()); //如上
}
}
public ResultSet query(String sql){ //查詢
try{
Statement stm=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stm.executeQuery(sql); //如上
}
catch(Exception e){
System.out.println(e.getMessage());
}
return rs;
}
public static void main(String args[]){
sqlServer conn=new sqlServer(); //創建sqlServer,就是你上面的類,以便調用裡面的方法
ResultSet rs=conn.query("select * from Orders"); //調用query方法,執行SQL語句後,把結果保存到結果集里
//conn.insert("delete from BookInfo where BookName =" +"\'悟空傳\'");
//conn.insert("insert into BookInfo (BookID,BookName,Author,KeyWord) values (14445678,'悟空傳','今何在','孫悟空')");
try{
while(rs.next()){ //循環,判斷結果集里的記錄,一條條往下走,是否還有下一條記錄,若是返回真,繼續走
System.out.print(rs.getString("OrderID"));
//System.out.print(rs.getString("U_age"));
}
rs.close() ; //關閉結果集
}
catch (Exception e){
System.out.println(e.getMessage());
}
}
}
注:
TYPE_FORWARD_ONLY:預設類型。只允許向前訪問一次,並且不會受到其他用戶對該資料庫所作更改的影響。
TYPE_SCROLL_INSENSITIVE:允許在列表中向前或向後移動,甚至能進行特定定位,例如移至列表中的第四個記錄或從當前位置向後移動兩個記錄。不會受到其他用戶對該資料庫所作更改的影響。
TYPE_SCROLL_SENSITIVE:象 TYPE_SCROLL_INSENSITIVE 相同,允許在記錄中定位。這種類型受到其他用戶所作更改的影響。如果用戶在執行完查詢之後刪除一個記錄,那個記錄將從 ResultSet 中消失。類似的,對數據值的更改也將反映在 ResultSet 中。
⑷ 德比的Derby資料庫
Derby資料庫是一個純用Java實現的內存資料庫,屬於Apache的一個開源項目。由於是用Java實現的,所以可以在任何平台上運行;另外一個特點是體積小,免安裝,只需要幾個小jar包就可以運行了。
Derby資料庫入門
1,下載並安裝Derby:
下載地址: ,下載最新版本。
我用的是10.5.3.0。
解壓縮到任意文件夾,我的是:E:JavaJoyderby
2,配置環境變數:
建立DERBY_HOME,值:E:JavaJoyderbydb- derby-10.5.3.0-bindb-derby-10.5.3.0-bin
在Path加入:%DERBY_HOME%in
在CLASSPATH加入:%DERBY_HOME%lib derby.jar;%DERBY_HOME%libderbyclient.jar;%DERBY_HOME%libderbytools.jar;%DERBY_HOME%libderbynet.jar
3,測試看看Derby安裝成功沒有
開始—Run—CMD
運行 sysinfo
如果安裝成功,將會看到相關信息,下面是截取的部分信息。
——— Derby 信息 ——–
JRE – JDBC: Java SE 6 – JDBC 4.0
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderby.jar] 10
.5.3.0 – (802917)
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderbytools.ja
r] 10.5.3.0 – (802917)
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderbynet.jar]
10.5.3.0 – (802917)
[E:JavaJoyderbydb-derby-10.5.3.0-bindb-derby-10.5.3.0-binlibderbyclient.j
ar] 10.5.3.0 – (802917)
4,創建和使用資料庫
打開命令行,進入想要放置資料庫的目錄,我的是:E:JavaJoy derbyDerby_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();
}
}
⑸ Derby是什麼意思
Derby是一個Open source的產品,基於Apache License 2.0分發。
1、Apache Derby是一個完全用java編寫的資料庫,Derby是一個Open source的產品,基於Apache License 2.0分發。
Apache Derby非常小巧,核心部分derby.jar只有2M,所以既可以做為單獨的資料庫伺服器使用,也可以內嵌在應用程序中使用。Cognos 8 BI的Content Store默認就是使用的Derby資料庫,可以在Cognos8的安裝目錄下看到一個叫derby10.1.2.1的目錄,就是內嵌的10.1.2.1 版本的derby。
2、Apache Derby 項目的目標是構建一個完全用 Java 編程語言編寫的、易於使用卻適合大多數應用程序的開放源碼資料庫。可以想像,開發一個資料庫並不簡單,Apache Derby 資料庫也不例外(因為它是個開放源碼軟體,所以您可以自行查看它)。但是 Derby 項目並不是從零開始的。回到 1996 年,一個叫做 Cloudscape, Inc 的新公司成立了,公司的目標是構建一個用 Java 語言編寫的資料庫伺服器。公司的第一個發行版在一年之後推出,後來產品的名稱變成 Cloudscape。1999 年,Cloudscape, Inc. 被大型資料庫廠商 Informix Software, Inc. 收購。
⑹ 如何確定derby資料庫的數據文件位置
創建新資料庫
connect 'jdbc:derby:mydb;create=true';
ij> connect 'jdbc:derby:mydb;create=true';
將在當前目錄下建立資料庫目錄 mydb;如果已經存在資料庫 mydb,則提示:
警告 01J01:未創建資料庫"mydb",而是建立到現有資料庫的連接。
ij> connect 'jdbc:derby:mydb;create=true';
警告 01J01:未創建資料庫"mydb",而是建立到現有資料庫的連接。
⑺ 怎麼連接已有的derby資料庫
1.程序中創建資料庫時,如果沒有指定目錄,會默認在項目的根目錄下,生成一個以derby資料庫名的目錄,如:
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
System.out.println("Load the embedded driver");
Connection conn = null;
Properties props = new Properties();
props.put("user", "test");
props.put("password", "test");
// create and connect the database named helloDB
conn = DriverManager.getConnection(
"jdbc:derby:testDB;create=true", props);
System.out.println("create and connect to testDB");
conn.setAutoCommit(true);
其中:「jdbc:derby:testDB;create=true」,則在項目根目錄下生成一個testDB目錄。
2.下載安裝coolsql後,操作如下:
1>新建一個書簽,選擇驅動
找到derby-10.9.1.0.jar(或其他版本jar),選擇下面的:org.apache.derby.jdbc.EmbeddedDriver 。
2>下一步,輸入用戶名、密碼,填寫程序中賦值的:test,test;下面的資料庫名字填寫時,要注意,寫系統的絕對路徑,如:E:\eclipse3.7\wordspace_mvn\staticize\testDB(staticize為項目根目錄),下面的url:jdbc:derby:E:\eclipse3.7\wordspace_mvn\staticize\testDB(自動填寫)。
3>保持連接就可以了。