gpt4 book ai didi

java - H2控制台-通过浏览器查看数据库显示旧数据

转载 作者:行者123 更新时间:2023-11-30 05:06:09 24 4
gpt4 key购买 nike

我正在使用H2 database对于一个简单的 Web 应用程序。

当我尝试通过 H2 控制台 Web 浏览器查看数据时,它似乎没有更新数据库中的最新数据。

例如:

我使用网络应用向表中添加一条新记录,当我从添加记录的表中执行 select * 时,它不会显示新记录。

当我通过浏览器连接到 H2 控制台时,我对登录进行了以下设置:

Saved Settings: Generic H2 (Embedded)

Setting Name: Generic H2 (Embedded)

Driver Class: org.h2.Driver

JDBC URL: jdbc:h2:file:/Develops/Databases/snowy_db;FILE_LOCK=NO

关于如何使用 H2 控制台浏览器访问数据库中的最新数据有什么想法吗?

提前致谢。

编辑

补充一下:我可以在网络应用程序中看到新记录,但在使用 H2 控制台浏览器时却看不到。

最佳答案

我猜你的问题是FILE_LOCK=NO选项。 documentation对此的说明是:

it is up to the application to protect the database files. Failing to do so will result in a corrupted database. [...] Please note that this is unsafe as another process is able to open the same database, possibly leading to data corruption

我强烈建议您使用更复杂的 H2 模式,例如 automatic mixed mode 。在此模式下,连接到给定数据库的第一个应用程序将打开套接字服务器,并且随后从其他应用程序连接到此数据库的每次尝试都使用套接字连接而不是原始文件系统访问。

如果您对此感到不舒服,只需将 H2 作为独立服务器单独运行或在您的 Seam 应用程序中运行即可。然后更改您的 JDBC URL,以便它通过 localhost 和 TCP 连接进行连接。

关于java - H2控制台-通过浏览器查看数据库显示旧数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5019271/

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