一、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数据库文件的更多相关文章

  1. Winform访问本地SQLServer数据库文件

    Winform访问本地SQLServer数据库文件 1.项目中添加config配置,如下: <configuration> <connectionStrings> <ad ...

  2. 关于HSQLDB访问已有数据库文件的操作说明

    关于HSQLDB数据库的创建,本文不做过多描述,可以在百度上搜索一下,有许多. 对于访问已存在的库文件,网上找了半天,没有整理的很清楚的参考资料,现将自己的操作过程整理如下,以供参考. 1.先下载一个 ...

  3. .Net版SQLite无法访问网络位置的数据库文件-winOpen,os_win.c 36702异常

    最近一个C#小程序,希望将SQLite数据库放在网络共享的位置,让多个客户端同时访问.却发现SQLite连接不上该网络位置的数据库,而如果数据库在本地则一切正常. 例如将SQLite数据库 test. ...

  4. 将raw里面的数据库文件写入到data中

    package com.city.list.db; import java.io.File; import java.io.FileNotFoundException; import java.io. ...

  5. 利用拷贝data目录文件的方式迁移mysql数据库

    其实迁移数据库,一般用sql文件就行,把A服务器数据库的表结构和数据等等导出,然后导入到B服务器数据库, 但是这次数据文件过大,大约有40个G,使用命令行导入,效果不是很好,经常在执行过程中报错.卡死 ...

  6. Mysql 利用拷贝data目录文件的方式迁移mysql数据库

    Mysql 利用拷贝data目录文件的方式迁移mysql数据库 步骤如下: 1.首先要确定data目录 这个问题困扰了我很久,因为网上的帖子大部分只是说拷贝mysql数据库目录下的data文件夹中的数 ...

  7. 使用Mysql.data.dll文件在服务器上运行访问Mysql

    我使用的这个Mysql.data.dll文件 web.config上面主要需要声明以下代码 <system.data> <DbProviderFactories> <ad ...

  8. WEKA从sqlite数据库文件导入数据

    1.编写代码的方式 只需要在java工程中导入weka.jar和sqlite-jdbc-3.8.7.jar两个jar包, weka.jar可以在weka的安装路径下找到, sqlite-jdbc-3. ...

  9. .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库

    今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...

随机推荐

  1. Centos6.5安装pip命令以及中途遇到的问题

    一.Centos6.5安装pip命令时可能会遇到的问题 1.安装setuptools模块时python安装模块时报异常:Compression requires the (missing) zlib ...

  2. 9.5Django操作数据库的增删改查

    2018-9-5 18:10:52 先贴上笔记 day61 2018-04-28 1. 内容回顾 1. HTTP协议消息的格式: 1. 请求(request) 请求方法 路径 HTTP/1.1\r\n ...

  3. JAVAORM框架之Mybatis (Ibatis) 详解

    目录 Mybatis基础概念 Mybatis开放方式演进 Mybatis框架核心要点 关联查询 延迟加载(懒加载) 动态SQL Mybatis缓存 Mybatis逆向工程 PageHelper分页插件 ...

  4. Docker实现跨主机互联

    首先修改一台docker的默认网络段 修改配置文件/usr/lib/systemd/system/docker.service 设置生效(重载配置文件并且重启) systemctl daemon-re ...

  5. Python之shutil模块

    shutil 高级的 文件,文件夹,压缩包 处理模块 正常把一个文件的内容拷贝到另外一个文件 s = file("test.py")d = file("test_copy ...

  6. ubuntu16.04下安装ros-kinetic

    参考:http://wiki.ros.org/kinetic/Installation/Ubuntu 1.添加ROS软件源 ~$ sudo sh -c 'echo "deb http://p ...

  7. HDU 3091 - Necklace - [状压DP]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3091 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...

  8. 基于bind搭建DNS主从

    使用bind的主从复制功能可以实现的功能:提供冗余,避免单点故障:均衡负载查询需求,从而提高系统可用性. 一.安装 #bind-chroot 负责DNS安全作用,将bind进程严格限制在特定的目录中 ...

  9. ListView and gridview常用属性

    刷新:notifyDataSetChanged 1.gridview常用属性 GridView的一些特殊属性:   1.Android:numColumns=”auto_fit”   //GridVi ...

  10. win10 问题:你没有权限在此位置中保存文件。请与管理员联系以获得相应权限。

    https://jingyan.baidu.com/album/b24f6c8207f09886bee5da4a.html?picindex=2 归根结底就是通过点击文件夹的属性,在安全选项处,修改操 ...