您现在的位置是:网站首页> 内容页

访问Hsql .data数据库文件

  • 尊亿娱乐登录
  • 2019-08-21
  • 74人已阅读
简介一、Hsql简介:hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议。仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等

一、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.backupfinedb.properties 文件包含关于数据库的一般设置。finedb.script 文件包含表和其它数据库,插入没有缓存表的数据。finedb.log 文件包含当前数据库的变更。finedb.data 文件包含缓存表的数据。finedb.backup 文件是最近持久化状态的表的数据文件的压缩备份文件如果数据库没有缓存表,finedb.data finedb.backup文件将不会存在,数据也可能存在finedb.script文件中

三、访问过程:

1.把下载的jar包..hsqldb-2.2.9hsqldblibhsqldb.jar放到hsql目录下

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

 

3.创建data目录把需要访问的文件放到此目录。也可以自己创建新的数据库文件,在命令行进入data文件夹输入命令:

D:hsqldbdata>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(); } } }

 

文章评论

Top