版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Hsqldb安裝與使用HSQLDB是一個輕量級的純 Java開發(fā)的開放源代碼的關(guān)系數(shù)據(jù)庫系統(tǒng),其體積小,占用空 間小,使用簡單,支持內(nèi)存運行方式等特點??梢栽谙螺d最新的HSQLDB版本。我這里下載的是HSQLDB 1.8.13版本。下載完之后,把它解壓到任一目錄下,如 E:hsqldb下,完成安裝工作。Hsqldb有四種運行模式:1、 內(nèi)存(Memory-Only )模式:所有的數(shù)據(jù)都將在內(nèi)存中完成,如果程序退出,則相 應的數(shù)據(jù)也將同時被銷毀。連接JDBC的實例為:jdbc:hsqldb:mem:dbname2、 進行(In-Process)模式:此模式從應用程序啟動數(shù)據(jù)庫,由于所有的數(shù)據(jù)都將
2、寫 到文件中,所以,即使程序退出,數(shù)據(jù)也不會被銷毀。In-Process不需要另外啟動,可以通過 DriverManager.getConnection(jdbcUriName, "sa",");方式即可啟動數(shù)據(jù)庫。連接 JDBC的實例為:jdbc:hsqldb:file:/E:/hsqldb/data/dbname jdbc:hsqldb:file:/opt/db/dbname jdbc:hsqldb:file:dbname3、 服務器模式:此模式下HSQLDB跟其它數(shù)據(jù)庫服務器一樣,需要通過服務器的形式來進行啟動,可以通過 java -cp ./lib/hsq
3、ldb.jar org.hsqldb.Server "database。testdb -dbname.0 testdbName 的命令啟動一個守護進程。連接 JDBC 的實 例為: jdbc:hsqldb:hsql:/localhost:<port>/dbname4、 Web服務器模式:此模式以 WEB服務器的形式啟動,并通過 HTTP協(xié)議接受客戶端命令。從1.7.2版本開始,Web服務器模式的HSQLDB開始支持事務處理。可以通過java -cp ./lib/hsqldb.jar org.hsqldb.WebServer "database.。testdb -
4、dbname.0 testdbname 的 命令來啟動。重點討論hsqldb服務器模式的啟動方法和連接和實際java程序的JDBC連接情況。假設(shè)JDK已經(jīng)安裝到機器上,環(huán)境變量等都正確設(shè)置。首先在E:hsqldbTest目錄下建立兩個子目錄, data和lib目錄,data用來存放數(shù)據(jù),lib 用來管理jar包。將解壓之后的hsqldb中的lib目錄下的hsqldb.jar文件拷貝到E:hsqldbTestlib 目錄下。1 .在hsqldbTest目錄下創(chuàng)建runServer.bat文件,其內(nèi)容為: cd datajava -classpath ./lib/hsqldb.jar org.hs
5、qldb.Server2 .保存runServer.bat文件,并雙擊運行該文件,此時回彈出命令行窗口,如下圖,表示已 啟動HSQLDB數(shù)據(jù)庫。c:C C : TIlD0TSsysteB32cBd. exeE:ShsqldbTest>cd Seruer(?10d448 : SeruerP10d448: Seruer(?10d448 : SeruerP10d448: Seruer(?10d448 : SeruerP10d448: Seruer(?10d448 : ly in 875 ms.Seruer(?10d448 : Seruer(?10d448 : Seruer(?10d448 :
6、Seruer(?10d448 :dataThreadmain,5,main: checkRunning<£alse> enteredThreadmain,5,main: checkRunning<false> exitedStartup sequence initiated from main<> methodLoaded properties from E:hsqldbTperties Initiating startup sequence.Seruer socket opened successf ullij
7、in 93 ms.Database index=0, id=0, db=f ile:test, alias = opened sucessfulStartup sequence completed in 1000 ms. 2010-07-28 14:29:46.843 HSQLDB seruer 1.8.1 is online To close normally* connect and execute SHUTDOUN SQL From command line, use ECtpll+EC to abort abruptly此時,在data目錄下產(chǎn)生了三個文件,如:test.lcktest
8、.log標識數(shù)據(jù)庫鎖狀態(tài)。-運行數(shù)據(jù)庫產(chǎn)生的10g信息,它將記錄每一個運行和用戶操作環(huán)節(jié)。perties數(shù)據(jù)庫的配置信息,包括分配的內(nèi)存大小等,可更具需要修改。注:如果在命令行窗口中按下Ctrl + C組合鍵,數(shù)據(jù)庫將退出并關(guān)閉。3 .再創(chuàng)建runManager.bat文件,用來啟動圖形界面管理工具,其內(nèi)容為:cd datajava -classpath .1ibhsq1db.jar org.hsqldb.util.DatabaseManager4 .保存runManager.bat文件,并雙擊文件,此時回彈出圖形界面(注意,在進行這一不之 前,必須確保第二步已執(zhí)行),如下圖。
9、HSQLFile View CommEnecuteRecent:將會列出最近的數(shù)據(jù)庫配置Setting Name:設(shè)置名稱,這里不需要填寫Type:選擇服務器模式(HSQL Database Engine Server)Driver :驅(qū)動名稱,不需要修改URL : JDBC連接,無需修改User:用戶名,根據(jù)需要設(shè)置Password:密碼,根據(jù)需要設(shè)置5 .點擊【OK】按鈕,即可連接到 test數(shù)據(jù)庫。如下圖所示。此時,我們可以在窗口中創(chuàng)建表等操作, 例如,我們創(chuàng)建一個 TBL_USERS的表。在菜單欄中選擇【COMMAND -> CREATE TABLE 命令,此時在右下文本框中顯示
10、創(chuàng)建表的命令,包括各式,支持的類型等。我們創(chuàng)建的 TBL_USERS表結(jié)構(gòu)如下圖所示:6 .點擊【Execute按鈕,如果無語法錯誤,SQL語句將正常執(zhí)行,此時,選擇菜單欄中的【View】->【Refresh Tree命令,左側(cè)欄中將顯示創(chuàng)建的TBL_USERS。如下圖所示。并且查看test.log文件,創(chuàng)建表的過程都將全部記錄。,1I x| j dbc: h sqldb :h sql jUIoc a I hostfE TEL_U8ER3 schema: PUBLICE IDS FIRST_NAME田 UkST_NAME由 LOGIN_DATE田 Indices囹 PropertiesC
11、learCREATE TABLE IBL_USERsTH ID IBTKEH BUT NULL FRIlflAEY KEY FIBST_ffAME 7rAscHAE NOT HULL, LAST_NOE ViECKML HOT NULL LDGIH DATE DATE3ExecutezJupdate taunt0H5QL D ab ns «File View CommanJ Recent Options7 .另外還可以用 DatabaseManagerSwing工具啟動圖形界面。創(chuàng)建 runManagerSwing.bat文 件,內(nèi)容為:cd datajava -classpath
12、.libhsqldb.jar org.hsqldb.util.DatabaseManagerSwing保存文件,雙擊該文件,將啟動 Swing圖形界面,如下圖所示,具體的操作過程和DatabaseManager工具類似,不再重復。,1! x|File yi ew Comnaiid 班cent Options Tools Schemas Helpgj Cltar StJL / SQLIni ti ali Eing.一以上就是啟動hsqldb數(shù)據(jù)庫和創(chuàng)建表的整個過程,其它的功能可以通過多次聯(lián)系即可掌握。按照以上操作方式,hsqldb將自動產(chǎn)生一個test的數(shù)據(jù)庫。但是有時候我們需要自己指定數(shù) 據(jù)庫
13、,數(shù)據(jù)庫訪問名,數(shù)據(jù)庫訪問端口等,該如何實現(xiàn)呢,很簡單。只要在相對根目錄下創(chuàng) 建個perties文件即可。創(chuàng)建自己制定的數(shù)據(jù)庫:1 .首先在E:hsqldbTest目錄下創(chuàng)建一個 perties文件,文件內(nèi)容為(注:在實際文 件中,刪除后面的注釋內(nèi)容):server.port=9001# 指定端 口號為 9001server.database.0=file:data/mydb # 將在 data 目錄下創(chuàng)建 mydb 數(shù)據(jù)庫server.dbname尸mydb#指定數(shù)據(jù)庫名,jdbc連接時就是用此名稱server.silent=true2 .在E:hsq
14、ldbTest目錄下創(chuàng)建runServer2.bat文件,文件內(nèi)容為java -classpath lib/hsqldb.jar org.hsqldb.Server3 .雙擊運行runServer2.bat文件,將會在data目錄下創(chuàng)建 mydb數(shù)據(jù)庫,并啟動數(shù)據(jù)庫。4 .雙擊運行已創(chuàng)建好的runManagerSwing.bat文件,打開圖形管理界面,并設(shè)置連接到 mydb數(shù)據(jù)庫中,如下圖所示:5 .配置好選項,點擊【OK】按鈕,即可連接到 mydb數(shù)據(jù)庫,在窗口中可以按照以前的步 驟創(chuàng)建表,添加記錄等操作。好了,以上就是整個hsqldb的安裝、啟動、創(chuàng)建表等的全過程,在這里特別說明的是,hs
15、qldb.是用JDK.1.5以上的版本的編譯的,所以,如果你使用的是低于jdk1.5的版本時,可能出現(xiàn)異常情況,不能正常使用。另外,即使你安裝的 jdk版本是1.5以上的,可能 還會出現(xiàn)異常,該如何辦呢,此時,確保你的hsqldb是在官方網(wǎng)站下載的,需要檢查你的java的環(huán)境變量,由于你的機器可能安裝有oracle,很有可能出現(xiàn)問題,此時只需%JAVA_HOME%bin路徑放置在path路徑的最開頭,這樣,就不會出現(xiàn)異常情況了。接下來,我們通過一個具體的java程序來連接建立好的 mydb數(shù)據(jù)庫,并且在 mydb數(shù)據(jù)庫中創(chuàng)建一個 TBL_USERS的表。并插入一條記錄。1 .在E
16、:hsqldbTest目錄下創(chuàng)建一個 HsqlDemo.java文件,內(nèi)容如下: import java.sql.Connection;import java.sql.DriverManager;import java.sql.Statement; import org.hsqldb.jdbcDriver;public class HsqlDemo public static void main(String args) try Class.forName("org.hsqldb.jdbcDriver");ConnectioncDriverManager.getConnec
17、tion("jdbc:hsqldb:hsql:/localhost:9001/mydb", "sa", ""); if (c != null) System.out.println("Connected db success!");String sql = "CREATE TABLE TBL_USERS(ID INTEGER, NAME VARCHAR, BIRTHDAY DATE);"Statement st = c.createStatement();st.execute(sql);sql
18、= "INSERT INTO TBL_USERS(ID, NAME, BIRTHDAY) V ALUES ('1', 'ADMIN', SYSDATE);"st.executeUpdate(sql);if (st != null) st.close();c.close(); catch(Exception e) System.out.println("ERROR:failed to load HSQLDB JDBC driver.");e.printStackTrace(); return;2 .在E:hsqldbTest目錄下建立一個 runJava.bat文件,用來運行 HsqlDemo.java。內(nèi)容如下: echo off# jdk 的路徑# 注意 ./ 后面的空格,./ 空格 HsqlDemoset path=D:P
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨沂科技職業(yè)學院《STM單片機原理及其應用》2023-2024學年第一學期期末試卷
- 遼東學院《體育游戲創(chuàng)編》2023-2024學年第一學期期末試卷
- 江西新能源科技職業(yè)學院《山水畫基礎(chǔ)二》2023-2024學年第一學期期末試卷
- 江蘇電子信息職業(yè)學院《數(shù)字化空間設(shè)計》2023-2024學年第一學期期末試卷
- 華東師范大學《媒介通論》2023-2024學年第一學期期末試卷
- 江蘇連云港某公司“12.9”爆炸事故報告
- 湖北國土資源職業(yè)學院《信號與控制綜合實踐》2023-2024學年第一學期期末試卷
- 遵義醫(yī)科大學醫(yī)學與科技學院《PC技術(shù)》2023-2024學年第一學期期末試卷
- 珠海格力職業(yè)學院《電工技術(shù)與電氣控制》2023-2024學年第一學期期末試卷
- 重慶能源職業(yè)學院《電子信息科學與技術(shù)導論》2023-2024學年第一學期期末試卷
- 中俄東線天然氣管道工程(永清-上海)環(huán)境影響報告書
- 2024年長沙市中考數(shù)學真題試卷及答案
- SY-T 5333-2023 鉆井工程設(shè)計規(guī)范
- 蔣詩萌小品《誰殺死了周日》臺詞完整版
- TB 10010-2008 鐵路給水排水設(shè)計規(guī)范
- 黑色素的合成與美白產(chǎn)品的研究進展
- 建筑史智慧樹知到期末考試答案2024年
- 金蓉顆粒-臨床用藥解讀
- 社區(qū)健康服務與管理教案
- 2023-2024年家政服務員職業(yè)技能培訓考試題庫(含答案)
- 2023年(中級)電工職業(yè)技能鑒定考試題庫(必刷500題)
評論
0/150
提交評論