1.HSQLDB数据库包含2-5个文件.例如,名为"test"的数据库会由下面的文件组成
test.properties 常规设置(general settings)
test.script 数据库表和其它数据库对象的定义,以及非缓存数据库表(non-cached tables)的数据
test.log 对数据库最近的修改
test.data 缓存数据库表(cached tables)的数据
test.backup 最近已知的一致状态(last known consistent state)的数据文件的压缩备份
test.lck 锁文件,记录数据库被打开的实情(fact)
当数据库没有缓存数据库表(cached tables)时,test.data和test.backup将不会被创建(will not be present).
2.数据库表类型
临时数据库表 和SQL标准中的GLOBAL TEMPORARY类型一致
持久数据库表 任何对数据库结构或数据内容的改变都会被写到<dbname>.script文件中
1> MEMORY tables(默认类型) 加载全部数据到内存中
2> CACHED tables 加载部分数据到内存中
3> TEXT tables 支持格式化的文本文件
3.创建数据库表语法,默认为MEMORY类型:
CREATE [MEMORY|CACHED|TEXT] TABLE
可以直接在script中加入SQL标准语法,这样当数据库启动的时候,HSQLDB会自动读入script中的数据到内存中.
4.HSQLDB数据库有三种运行模式,分别是Server模式和In-Process(Standalone)模式和Memory-Only模式.
5.根据客户端和服务器通信的协议不同,Server模式可以分为以下三种:
HSQLDB Server,使用HSQLDB私有的通信协议,启动命令是:
java -cp hsqldb.jar org.hsqldb.Server -database.0 file:simulateurDB -dbname.0 simulateur
HSQLDB Web Server,使用http协议,启动命令是
java -cp hsqldb.jar org.hsqldb.WebServer -database.0 file:simulateurDB -dbname.0 simulateur
HSQLDB Servlet,使用http协议.当Tomcat等servlet引擎提供数据库的访问时,可以使用这种模式.
但它不能脱离Servlet引擎独立运行,并且只能提供一个数据库
6.try {
Class.forName("org.hsqldb.jdbcDriver" );
}catch (Exceptione){
System.out.println("ERROR:failedtoloadHSQLDBJDBCdriver." );
e.printStackTrace();
return ;
}
Connectionc=DriverManager.getConnection("jdbc:hsqldb:hsql://localhost / simulateur" , "sa" , "" );
7.在Ant中启动的HSQLDB写法:
<target name="runsql" description="run hsql">
<java classpathref="libs" fork="true" classname="org.hsqldb.Server">
<arg line="-database.0 file:simulateurDB -dbname.0 simulateur"/>
</java>
</target>
8.启动HSQLDB的界面效果:
<path id="libs">
<fileset dir="../libext">
<include name="*.jar" />
</fileset>
</path>
<target name="manager" description="show hsql">
<java classpathref="libs" fork="true" classname="org.hsqldb.util.DatabaseManagerSwing">
<arg value="-url"/>
<arg value="jdbc:hsqldb:hsql://localhost/simulateur"/>
<arg value="-driver"/>
<arg value="org.hsqldb.jdbcDriver"/>
</java>
</target>
9.In-Process模式是将数据库引擎与应用程序运行在同一个JVM中,主要的缺点是不能从你的应用程序外部连接数据库了.在1.8.0版本中, 你可以从同一个JVM的一个线程里面来运行一个服务器实例,从而可以提供外部连接来访问你的In-Process数据库.In-Process模式的数据 库是从JDBC语句启动的,把文件的路径作为URL的一部分.例如:
文件方式是Connection c = DriverManager.getConnection("jdbc:hsqldb:file:testdb", "sa", "");
内存方式是Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:aname", "sa", "");
其中当以内存方式(Memory-only)运行时,通过在server.properties指定相同的url,可以在clients之间交换信息.
相关推荐
1. **运行与使用HSQLDB**:介绍了HSQLDB的基本使用方法,包括如何运行HSQLDB及其提供的不同工具(如`HsqldbServer`、`HsqldbWebServer`等),以及如何在不同模式下使用HSQLDB。 2. **SQL问题**:探讨了HSQLDB对SQL...
- **安装步骤**:无需复杂安装,只需将HSQLDB包解压至所需的目录即可使用。 #### 三、HSQLDB的运行与使用 - **运行工具**:包括HsqldbServer、HsqldbWebServer等。 - **HsqldbServer**:提供数据库服务的服务器端...
**HSQldb 概述** HSQldb,全称 HyperSQL Database,是一个开源、轻量级、完全Java编写的数据库管理系统。...通过深入研究这个示例,你可以掌握HSQldb 的基本操作和特性,为你的项目开发带来便利。
以下是一些基本操作: 1. **启动HSQldb**:通过java -jar hsqldb.jar命令启动HSQldb服务器,或者在Java代码中直接加载HSQldb库。 2. **连接数据库**:使用JDBC驱动进行连接,如`jdbc:hsqldb:hsql://localhost/test...
描述中提及的有两个zip文件:hsqldb_1_8_0_10.zip 和 hsqldb-mini.zip,以及一个HSQldb的学习文档,这表明我们可以探讨HSQldb的基本概念、版本信息、安装与使用方法,以及可能包含的迷你版数据库系统。 首先,...
本文档主要介绍了HSQLDB的基本概念、如何安装和运行HSQLDB以及一些高级用法。 #### 二、HSQLDB的特性与应用场景 HSQLDB的主要特性包括: - **纯Java实现**:可以在任何支持Java的平台上运行。 - **轻量级**:占用...
本压缩包“JDBC-HSQLDB.rar_hsqldb”包含了使用Java通过JDBC与HSQLDB进行交互的基本示例和配置文件。 **HSQldb核心特性** 1. **完全Java实现**:HSQLDB是纯Java编写的,可以在任何支持Java的平台上运行,无需安装...
### HSQLDB用户手册知识点概览 #### 一、HyperSQL Database Engine (HSQLDB) 概述 - **版本信息**:此手册是针对HSQLDB...以上内容涵盖了HSQLDB用户手册中的核心知识点,旨在帮助用户深入了解HSQLDB的功能和使用方法。
确保你的系统满足这些基本需求,并且具备Eclipse这样的集成开发环境,以便于调试和分析。 ### 二、创建数据表 HSQLDB支持三种类型的数据表: A. **Memory Table**:内存表的所有数据都存储在内存中,关闭数据库时...
在压缩包中的`HSQLDB_guide_zh.pdf`是HSQDB的中文用户指南,这份文档详细介绍了如何安装、配置和使用HSQDB,包括创建数据库、编写SQL语句、管理用户和权限等。通过阅读这份文档,用户可以快速掌握HSQDB的基本操作,...
- **配置选项**:除了基本的字段分隔符(`fs`),还可以配置VARCHAR类型的分隔符(`vs`)和LONGVARCHAR类型的分隔符(`lvs`),以及特殊的指示符如`\semi`(分号)、`\quote`(引号)等。 #### 四、总结 Text表为HSQLDB带来...
本文将详细介绍如何从零开始使用HSQLDB,并通过实际操作步骤帮助读者快速掌握其基本使用方法。 #### 二、下载与安装 1. **下载HSQLDB** - 访问HSQLDB官方网址(http://hsqldb.org/),由于可能存在网络限制问题,...
通过深入阅读这份指南,开发者不仅可以学会如何使用HSQLDB,还能掌握数据库管理的基本知识,提升数据库设计和管理技能。对于Java开发者而言,HSQLDB是一个非常实用的学习和开发工具,尤其在测试环境中,它可以极大地...