现在的位置: 首页 > 综合 > 正文

HSQLDB创建数据库和基本的数据库访问

2013年10月23日 ⁄ 综合 ⁄ 共 2321字 ⁄ 字号 评论关闭
HSQLDB创建数据库和基本的数据库访问(一)
2009-01-08 17:51
    Hsqldb是一个纯java编写的轻量级数据库,主要有三种运行模式:1 Server模式 2 Standlone模式 3 Memory-Only模式。其中server模式又分为:Hsqldb Server模式,Hsqldb Web Server模式,Hsqldb Servlet模式。


    访问Hsqldb的官方地址:http://hsqldb.org/ 下载最新的hsqldb,下载地址:http://sourceforge.net/project/showfiles.php?group_id=23316&package_id=16653&release_id=339171 ,我下载时的最新版本是1.8.0.10 下载后解压。

    下面介绍一下如何创建数据库:

    1 在e盘下建立一个目录testhsql文件夹(这个是任意建立的,呵呵),将hsqldb.jar拷贝到里面,然后再里边再建立一个data的文件夹(当然这个文件夹也是任意建立的,起其他名字也可以)如图示

   


图0

    2 进入命令提示符,进入data文件夹,输入命令:java -cp ../hsqldb.jar org.hsqldb.Server -database mydb ,这时候,data文件夹中就会出现两个文件:mydb.log 和 mydb.properties ,也就是创建了一个名称为mydb的数据库,如图示。注意,这也是数据库引擎的启动界面,如果将其关闭,第三步不能成功,因为数据库启动引擎关闭了,特别要注意,呵呵。

图1
    3 输入命令:java -cp ../hsqldb.jar org.hsqldb.util.DatabaseManager (注:还是在data目录执行这个命令),就会出现一个数据库控制界面,如图:(这里选择的是In-Memory模式,当然Server模式也可以)


图2

   图3
4 下面咱们以Server运行模式为例介绍,点击“ok”按钮进入系统。在脚本执行框中,输入:create table customer(id integer not null primary key,firstname varchar,lastname varchar) ,这样就创建了一个名字为customer的数据表。
在执行:insert into customer values(1,'liu','zhaoyang') ,点击Execute按钮,就插入了一条数据,在执行:select * from customer,就可以查询出这条数据了,如图示:


图4
如果现在我们把数据库运行引擎关闭,即关闭图1中所示的运行引擎。如果再次运行引擎,即:java -cp ../hsqldb.jar org.hsqldb.Server -database mydb ,就会在data文件夹中出现一个文件mydb.srcipt ,这里面保存着数据执行文件,运行时会执行这个文件中sql语句。也就是说,数据以sql的形式保存在mydb.srcipt文件里面,再次运行引擎时,会再次插入这些保存的数据,这样会看到上次咱们建立的customer的数据表,如下图示:

上面是启动数据库(包括建立)和查看的方法,供大家参考,如果要研究hibernate的一些特性,就不需要像mysql,oracle等大型数据库服务了,一个小小的jar包,就是一个数据库,作为测试很是方便。呵呵。前面还有3篇关于hsqldb的文章,也可以参考一下,呵呵。

-------------------------------------------------
另注:如何给数据库起一个别名
创建命令:java -cp ../hsqldb.jar org.hsqldb.Server -database.0 mydb -dbname.0 sun 
这时候,就给数据库起了一个叫sun的别名,访问时,需要在在localhost后面加一个sun,如示:jdbc:hsqldb:hsql://localhost/sun 
如图示:

    hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议,如果你是使用Java编程的话,不凡考虑一下使用它,相对其他数据库来说,其体积小,我使用的是hsqldb1_8_0_7,压缩包大小为3.12M。仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等内容。
    看了一下网上的一些hsqldb的资料,大多数数据库的启动和用户界面的操作都在命令行中进行操作,o(∩_∩)o...哈哈,感觉有点麻烦。在hsqldb的压缩包中,有个自带的数据库test,它的启动和用户界面操作都是直接有一个批处理文件来执行,很方便。其实我们就可以根据这两个批处理文件来写自己创建的数据库的批处理文件。
    hsqldb自带数据库的启动批处理文件,在压缩包中,demo/runServer.bat文件,右键“编辑”,可以看到文件中的内容为:
cd ..\data
@java -classpath ../lib/hsqldb.jar org.hsqldb.Server %1 %2 %3 %4 %5 %6 %7 %8 %9
即启动在data目录下的系统自带的数据库test。
如果你要在db目录下创建,并启动数据库mydb。就可以编写批处理文件:
cd ..\db
@java -classpath ../lib/hsqldb.jar org.hsqldb.Server -database.0 mydb -dbname.0 mydb
用户界面的操作可以同样的方式进行编写批处理文件。

抱歉!评论已关闭.