访问Hsql .data数据库文件
一、Hsql简介:
hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议。 仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等内容。下载地址:https://sourceforge.net/projects/hsqldb/files/hsqldb/。其中hsqldb-2.4.x 开头的需要jdk8及以上,低于这个版本的比如hsqldb-2.2.9 jdk7可以用。
二、Hsql文件结构:
数据库会包含如下文件:
• finedb.properties
• finedb.script
• finedb.log
• finedb.data
• finedb.backup
finedb.properties 文件包含关于数据库的一般设置。
finedb.script 文件包含表和其它数据库,插入没有缓存表的数据。
finedb.log 文件包含当前数据库的变更。
finedb.data 文件包含缓存表的数据。
finedb.backup 文件是最近持久化状态的表的数据文件的压缩备份文件
如果数据库没有缓存表,finedb.data finedb.backup文件将不会存在,数据也可能存在finedb.script文件中。
三、访问过程:
1.把下载的jar包..\hsqldb-2.2.9\hsqldb\lib\hsqldb.jar放到hsql目录下

2.把jar包添加到classpath环境变量中

3.创建data目录把需要访问的文件放到此目录。也可以自己创建新的数据库文件,在命令行进入data文件夹输入命令:
D:\hsqldb\data>java org.hsqldb.Server -database finedb

4.创建system.properties文件,dbname和port是随便指定的,finedb的名字是要与需要访问的数据文件名字保持一致。

5.打开命令窗口,进入当前文件夹输入服务端命令:java org.hsqldb.Server。提示成功数据库说明已经成功启动并连到.data文件了,如果提示sql有问题可以去finedb.script中修改脚本。

6.打开另外一个命令窗口,进入当前文件夹输入客户端命令:java org.hsqldb.util.DatabaseManagerSwing会弹出窗口


7.setting name随便写,URL中输入jdbc:hsqldb:hsql://localhost:8001/fineReportdb就可以成功连上db了。

四、用代码访问Hsql数据库:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ConnetcHsqlDb {
public static void main(String[] args) {
String url = "jdbc:hsqldb:hsql://localhost:8001/fineReportdb";
String user = "SA";
String password = "";
try {
Class.forName("org.hsqldb.jdbcDriver");
Connection conn = DriverManager.getConnection(url, user, password);
Statement state = conn.createStatement();
ResultSet rs = state.executeQuery("SELECT FIRSTNAME,LASTNAME FROM customer");
while (rs.next()) {
System.out.print(rs.getString("FIRSTNAME") + " ");
System.out.print(rs.getString("LASTNAME") + " ");
System.out.println("");
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
访问Hsql .data数据库文件的更多相关文章
- Winform访问本地SQLServer数据库文件
Winform访问本地SQLServer数据库文件 1.项目中添加config配置,如下: <configuration> <connectionStrings> <ad ...
- 关于HSQLDB访问已有数据库文件的操作说明
关于HSQLDB数据库的创建,本文不做过多描述,可以在百度上搜索一下,有许多. 对于访问已存在的库文件,网上找了半天,没有整理的很清楚的参考资料,现将自己的操作过程整理如下,以供参考. 1.先下载一个 ...
- .Net版SQLite无法访问网络位置的数据库文件-winOpen,os_win.c 36702异常
最近一个C#小程序,希望将SQLite数据库放在网络共享的位置,让多个客户端同时访问.却发现SQLite连接不上该网络位置的数据库,而如果数据库在本地则一切正常. 例如将SQLite数据库 test. ...
- 将raw里面的数据库文件写入到data中
package com.city.list.db; import java.io.File; import java.io.FileNotFoundException; import java.io. ...
- 利用拷贝data目录文件的方式迁移mysql数据库
其实迁移数据库,一般用sql文件就行,把A服务器数据库的表结构和数据等等导出,然后导入到B服务器数据库, 但是这次数据文件过大,大约有40个G,使用命令行导入,效果不是很好,经常在执行过程中报错.卡死 ...
- Mysql 利用拷贝data目录文件的方式迁移mysql数据库
Mysql 利用拷贝data目录文件的方式迁移mysql数据库 步骤如下: 1.首先要确定data目录 这个问题困扰了我很久,因为网上的帖子大部分只是说拷贝mysql数据库目录下的data文件夹中的数 ...
- 使用Mysql.data.dll文件在服务器上运行访问Mysql
我使用的这个Mysql.data.dll文件 web.config上面主要需要声明以下代码 <system.data> <DbProviderFactories> <ad ...
- WEKA从sqlite数据库文件导入数据
1.编写代码的方式 只需要在java工程中导入weka.jar和sqlite-jdbc-3.8.7.jar两个jar包, weka.jar可以在weka的安装路径下找到, sqlite-jdbc-3. ...
- .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库
今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...
随机推荐
- vue---阻止默认表单提交的三种方法
vue在做表单提交的时候,需要用到一些自定义的验证规则,这个时候就需要阻止表单默认的提交方式. 方法一:直接阻止 <form id="form" @submit=" ...
- Java 多线程 线程的五种状态,线程 Sleep, Wait, notify, notifyAll
一.先来看看Thread类里面都有哪几种状态,在Thread.class中可以找到这个枚举,它定义了线程的相关状态: public enum State { NEW, RUNNABLE, BLOCKE ...
- vs附加调试 w3p进程没有名称
解决: 把vs用管理员运行
- 【转】Ant与Ivy的安装
一.简介 Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发.更多介绍 Apache Ivy,是一个管理项目依赖的工具.更多介绍请 ...
- 2018/03/09 每日一学PHP 之 require_once require include include_once 包含文件的区别
require_once require include include_once 方法的区别 对于包含文件来说,如果只是使用框架来说的话,应该会很少碰到,因为框架底层对于文件的引用等做了很好的封装, ...
- 洛谷CF264B Good Sequences dp
解题报告:dp+数论 解题报告: 传送门! 开始看这题的时候想挂了,,,想了个显然是错解的想法,,,就是,我也不知道我怎么想的,鬼迷心窍地就想开个数组存每个质因数的倍数的出现次数,然后排下序的max就 ...
- 单调栈&单调队列学习笔记!
ummm,,,都是单调系列就都一起学了算了思想应该都差不多呢qwq 其实感觉这俩没有什么可说的鸭QAQ就是维护一个单调的东西,区别在于单调栈是一段进一段出然后单调队列是一段进另一段出?没了 好趴辣重点 ...
- windows上apache是线程处理请求,linux上apache是进程处理请求
windows上apache是线程处理请求,linux上apache是进程处理请求
- 【Pyton】【小甲鱼】正则表达式(一)
正则表达式学习: >>> import re >>> re.search(r'FishC','I love FishC.com!') <_sre.SRE_Ma ...
- LeetCode-206.ReverseLinked List
Reverse a singly linked list. Example: Input: 1->2->3->4->5->NULL Output: 5->4-> ...