gpt4 book ai didi

java - 嵌入 hsql 的一些有趣的事情

转载 作者:行者123 更新时间:2023-12-02 13:40:58 32 4
gpt4 key购买 nike

我只是对某些事情感到好奇。我在我的项目中使用 hsql(当然是嵌入式的)。有时我觉得需要可视化 hibernate 正在生成的内容。我拿了一份 dbvisualizer 的免费副本。这是 hsqljdbc.properties

jdbc.url=jdbc:hsqldb:file:mydb;create=true
hibernate hbm2ddl.auto=create

我下载了 hsql 1.8.0_10。我完成了所有必需的过程。我可以连接并查看表,但之后对表所做的更改似乎不愿意显示。然后我尝试删除数据库生成一个新数据库,但仍然如此。你得到了有什么想法吗?

我通常使用 Derby,但最近我意识到关系管理并不那么精确。我目前使用 mysql,这不利于开发,所以我想知道我是否忘记做某事或者它只是为了表现就这样。感谢您阅读本文

最佳答案

新指南中详细讨论了如何使用 HSQLDB 进行开发和测试。

http://hsqldb.org/doc/2.0/guide/deployment-chapt.html#dec_app_dev_testing

HSQLDB 默认使用写入延迟机制,更改会在 1.8.x 版本中 10 秒后刷新到磁盘,在 2.0 及更高版本中 0.5 秒后刷新到磁盘。

您可以使用以下 URL 强制数据库关闭并在最后一个连接关闭时写入所有更改:

jdbc.url=jdbc:hsqldb:file:mydb;shutdown=true

使用 HSQLDB 2.x,您可以使用 write_delay 属性强制每次提交立即写入磁盘:

jdbc.url=jdbc:hsqldb:file:mydb;hsqldb.write_delay=false

版本 2.2.9 及更高版本会在最后一个连接关闭时保留最新更改,因此可能不需要使用 hsqldb.write_delay=false 进行关闭连接的测试。

使用 HSQLDB 1.8,您需要在开始时运行 SQL 命令来执行此操作:

设置 WRITE_DELAY FALSE

关于java - 嵌入 hsql 的一些有趣的事情,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1723861/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com