- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.2 HSQLDB介绍
3.3.1简介 什么是HSQLDB?
HSQLDB具有以下特点:
是一个开放源代码的JAVA数据库
具有标准的SQL语法和JAVA接口
HSQLDB可以自由使用和分发
非常简洁和快速的
具有内存数据库,独立数据库和C/S数据库三种方式
可是在APPLET中使用
更多的细节:
索引可以被创建和自动使用
支持事务处理
允许表关联
完整性引用和约束
支持JAVA存储过程和函数
数据库可以生成SQL脚本
使用用户名,密码,访问权限等安全机制
可以被JAVA1.1和JAVA2编译
建立在HypersonicSQL基础上的HSQLDB,是一个通用目的的数据库,非常的小,而且易于安装和使用。可以用于APPLETS中、测试中、应用系统中。 由于提供了标准SQL和JDBC接口,HSQLDB可以方便的和其他数据库之间进行数据转换。
HSQLDB的当前最新版本是1.8
hsqldb.ja包位于/lib目录下,它包含了一些组件和程序。每个程序需要不同的命令来运行。
Hsqldb.jar中的组件有以下这些:
? HSQLDB RDBMS
? HSQLDB JDBC Driver
? Database Manager (Swing and AWT versions)
? Transfer Tool (AWT version) )
? Query Tool (AWT)
? Sql Tool (command line)
其中、HSQLDB RDBMS和JDBCDriver提供了HSQLDB的核心功能。其余的组件都是通用的数据库工具。如果提供相应的JDBC驱动的话,这些通用工具可以使用在任何数据库上。
3.3.2 运行工具
Hsqldb提供的所有工具都能以运行java class归档文件(也就是jar)的方式运行。在下面运行AWT版本的DatabaseManager的例子中,hsqldb.jar位于相对于当前路径的../lib下面。
java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager
如果hsqldb.jar位于当前路径中,运行DatabaseManager的命令就应该改成:
java -cp hsqldb.jar org.hsqldb.util.DatabaseManager
Hsqldb提供的主要的工具类
? org.hsqldb.util.DatabaseManager
? org.hsqldb.util.DatabaseManagerSwing
? org.hsqldb.util.Transfer
? org.hsqldb.util.QueryTool
? org.hsqldb.util.SqlTool
其中像DatabaseManager或Sql Tool这样的工具,可以用或者只能用命令行参数来运行。你可以在命令行后面加上参数-?来查看这些工具可用的参数列表。Database Manager 和 Transfer Tool 具有图形用户接口,可以进行方便的交互式操作。
3.3.3 运行Hsqldb
HSQLDB可以采用几种不同的方式运行。不过可以大致分为Serer模式和In-Process(进程内模式,也称之为Standalone(独立)模式)。对于每种模式,Jar中都有相应的子程序来运行HSQLDB。
3.3.5一般操作
(1)关闭数据库
以不同模式运行的所有数据库都可以通过以SQL语句发出的SHUTDOWN命令来关闭。在1.7.2版本中,当上次对数据库的连接通过JDBC被显式关闭之后,in-process模式的数据库还是不会被关闭,除非使用SHUTDOWN命令。当SHUTDOWN命令发出,所有的活动事务(active transactions)都会被回滚(rolled back)。关闭数据库的一种特殊形式是通过SHUTDOWN COMPACT命令。该命令重写.data文件,这个文件包含了存储在CACHED表中的信息,该命令并对该文件的大小进行精简(compact)。这个命令应该被定时执行,特别是在cached表中执行了许多插入,更新和删除操作的时候。数据库结构的变换,比如删除、更改表或者索引,会产生大量未使用的空间,不扩可以通过此命令进行空间的回收利用。
(2)在一个JVM里使用多数据库
在上述的例子中,每个服务器只能有一个数据库工作以及仅能创建一个In-Memory数据库。不过,从1.7.2版本以来,HSQLDB能够以多个服务器模式为多个数据库工作,它允许对In-Process数据库和memory-only数据库进行并发访问。 这些性能在“高级主题”一章进行了叙述。
(3) 创建新数据库
文档评论(0)