数据库---HSQLDB使用教程详解

本学校期末的课程设计要求使用HSQLDB数据库,作为一个小众且轻量的数据库,很少人接触过,再加上同学们都问这个方面,所以就出教程,展示怎么使用HSQLDB。

第一步:启动HSQLDB

下载HSQLDB的jar包,因为HSQLDB非常的轻量级,不用像MYSQL一样安装非常麻烦,它只需要一个jar包。

可以通过这个链接来下载:

链接: https://pan.baidu.com/s/10KV3Ssl6quQfLoWlcj4oFQpwd=mx8b 提取码: mx8b

下载完成后,就可以通过下面得命令启动了

复制代码
java -cp hsqldb.jar org.hsqldb.server.Server -database.0 mydb -dbname.0 db

怎么启动?

1、在此目录栏中直接输入 cmd,回车,打开命令行

在打开的命令行中输入刚才的命令:

然后就可以启动HSQLDB:

这就是启动后的样子,这个命令行不能关闭,一关闭数据库也就关闭了。

注意:不要直接在资源管理器中右键打开命令行窗口

不要这样打开,不要这样打开,不要这样打开!!!就按照我说的做就行

至此,HSQLDB数据库已经启动了,但是我们需要一个可视化的界面来操作HSQLDB

第二步:在IDEA中连接HSQLDB

这里我直接在IDEA中链接数据库,也可以使用第三方的数据库可视化工具,如DataGrip等。如果要使用IDEA连接数据库,IDEA必须是专业版!!!

按照这样操作,就可以进到这个界面:

这里面按照下面这个来填就不会有问题

路径:/
用户:SA
密码不用填,为空就行
数据库:localhost
URL:jdbc:hsqldb:hsql://localhost/db

填写完成之后点击这里进行数据库连接测试,如果是第一次用IDEA连接,会先让你下载一个东西,直接点击下载就行,下载完点击测试连接。

如果出现连接成功,就代表你连接成功了(废话)。

至此,已经在IDEA中连接好了HSQLDB,可以通过IDEA来操作数据库了

第三步:操作HSQLDB

这是我的数据库界面,如果第一次连接,PUBLIC中应该是空的,可以右键PUBLIC,

会出现这个,点击查询控制台

然后就可以在控制台中写SQL语句啦~~

强烈建议建表时表名、字段名统统大写,会减少不必要的麻烦!!!

第四步:通过JDBC使用HSQLDB

在使用JDBC之前,还需要在项目中导入HSQLDB的jar包,如果使用Maven就需要导入相关的依赖,此处基于javaweb项目,演示导入jar包的过程:

1.在文件目录下新建一个lib目录

2.把刚才下载的jar包复制一份放到lib目录下,然后对着这个jar包右键,在最后有一个添加为库,点击确定

此时在项目中导入了jar包,如果这时候直接运行,应该会发生ClassNotFoundException异常,这个问题很常见。

解决方案:将HSQLDB的jar包也放到Tomcat的lib目录下就可以了

然后就可以通过JDBC使用HSQLDB了,话不多说,直接按照代码写就行

复制代码
public class DBUtil {

    private static final String DB_DRIVER = "org.hsqldb.jdbc.JDBCDriver";
    private static final String DB_URL = "jdbc:hsqldb:hsql://localhost/db";
    private static final String DB_USER = "sa";
    private static final String DB_PASSWORD = "";

    static {
        try {
            Class.forName(DB_DRIVER);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    public static Connection getConnection() throws SQLException {
        return DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
    }
}

建议按照我这样写,如果要用的话直接通过这个类来获得数据库连接对象

复制代码
Connection connection = DBUtil.getConnection();

至此,HSQL的使用教程就完了。

相关推荐
这个DBA有点耶5 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G5 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备5 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远5 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
2601_962218615 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
张洛闻Eren5 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
于平安5 天前
MySQL-触发器
数据库·mysql
白远山5 天前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
Omics Pro5 天前
斯坦福Nature+Science|广义虚拟细胞基础大模型
数据库·人工智能·算法·机器学习·自然语言处理
2603_965148115 天前
AI+API选品:下一代智能商务助手雏形已现
java·大数据·数据库·人工智能·数据挖掘