h2 相关问题

H2是用Java编写的关系数据库管理系统。它可以嵌入Java应用程序中,也可以在客户端 - 服务器模式下运行。 H2支持常规的基于磁盘的数据库以及内存数据库。

H2弹簧靴测试跌落表

我是测试 h2 的新手。我有一个小问题。在对我的 Spring Boot 应用程序(基于 sql server)执行测试期间,我使用 h2 作为仅用于测试的数据库。添加测试依赖后我...

回答 1 投票 0

内存中 H2 数据库出错,对名称为“inMemoryDatabaseShutdownExecutor”的 bean 调用销毁方法失败

我正在尝试学习 Java Springboot 微服务,我创建了一个在内存 H2 数据库中使用的贷款微服务,它给出了详细信息错误2023-10-12T12:26:55.058+05:30 WARN...

回答 1 投票 0

无法启动 quarkus 进行测试。 “数据源‘<default>’未配置。” YAML配置问题

我正在通过测试来介绍我的新 Quarkus REST API 中的功能。我目前正在学习如何使用 Quarkus 开发微服务,并且正在尝试 Liquibase。该项目包括工作...

回答 1 投票 0

无法启动 quarkus 进行使用 H2 和 Liquibase 的测试。数据源“<default>”未配置。要解决此问题,请配置数据源 '<default>'

我正在通过测试来介绍我的新 Quarkus REST API 中的功能。我目前正在学习如何使用 Quarkus 开发微服务,并且正在尝试 Liquibase。该项目包括工作...

回答 1 投票 0

集成测试的奇怪问题

@Sql 在测试类 插入bankdemo.bills(id, is_active, 余额, 货币, account_id) 值('0', '1', '0.00', 'RUB', '0'); 绿色测试显示数据库中存在 id == 0 的 Bill @Te...

回答 1 投票 0

在H2数据库查询中正确使用JSON列上的字段引用?

H2 没有像 JSON_VALUE(my_json, '$.myFieldName') 这样的 JSON 提取函数(例如 MySQL)。然而,“字段参考”的 H2 语法参考指出: ( 表达 ) 。场N...

回答 1 投票 0

如何一起使用flyway + h2 + jooq codegen?

我使用flyway和jooq根据我的模式迁移和生成代码。我有一个基本的迁移脚本: 创建表格书籍( book_id BIGINT 默认生成为 IDENTITY

回答 1 投票 0

无法在 Spring Boot 中使用 WebFlux 使用 H2 和 R2DBC 创建 ConnectionFactory 错误

我使用 WebFlux 反应式模块、H2 内存数据库和 R2DBC 反应式驱动程序创建了一个 Java Spring Boot 服务。 当我运行该服务时,它失败并显示“无法创建

回答 5 投票 0

为什么 Spring Boot 忽略我的 schema.sql 文件?

org.springframework.boot spring-boot-starter-parent 3.2.2 ...

回答 1 投票 0

Spring Boot - 配置 H2 数据库仅用于测试

因为我对 Java 和 Spring Boot 还很陌生,并且被分配了为现有项目编写单元测试的任务,所以我想问一下在尝试设置 h2 时我做错了什么

回答 1 投票 0

我可以在 OpenShift 上启用 HTTP/2 吗?

我可以为 OpenShift 上托管的网站启用 HTTP/2 吗? 我知道你可以使用CloudFlare作为代理,那么它将提供对HTTP/2的支持。但我感兴趣的是配置精确的能力...

回答 5 投票 0

插入查询适用于 H2,但不适用于 Spring/Java 本身

我正在尝试使用 Spring Boot 在基础级别上开发一个赛道评级 Web 项目。 我编写了两个相互之间具有多对多关系的独立实体。曲目和歌手分别是哪些

回答 1 投票 0

H2 数据库错误:“未找到域 'int'”

@Column(名称=“信任”,长度= 1,可为空= false,columnDefinition =“int”) 私人布尔信托; org.h2.jdbc.JdbcSQLSyntaxErrorException:找不到域“int”...

回答 1 投票 0

Spring Boot JPA/Hibernate 中的关系型数据库外键

我正在使用 Spring Boot JPA 和 Gradle。我正在努力寻找一个可以遵循的指南,该指南重点关注使用正确的 Spring Boot 语法创建关系数据库。我尝试过,但我...

回答 1 投票 0

从 C# 使用 H2 数据库

借助下面提到的 URL,我可以从我的 C# 应用程序连接到 H2 数据库 http://www.h2database.com/html/advanced.html#microsoft_dot_net org.h2.Driver.load(); 连接...

c# h2
回答 1 投票 0

h2 在内存数据库私有模式下 - 无法访问控制台

我的是一个 Mule 4 应用程序(4.4),使用内存数据库中的 H2 来执行 munit 测试。 所以之前使用 jdbc url 为: 我的是一个 Mule 4 应用程序(4.4),使用内存数据库中的 H2 来执行 munit 测试。 所以之前使用 jdbc url 作为: <property name="url" value="jdbc:h2:mem:empdb;DB_CLOSE_ON_EXIT=FALSE;MODE=ORACLE; INIT=RUNSCRIPT FROM 'classpath:sql/h2init.sql';TRACE_LEVEL_FILE=4;TRACE_LEVEL_SYSTEM_OUT=3;" /> 然而,这个问题是在同一个 Munit 套件中有多个 Munit 的情况下,并且每次测试后都会抱怨 due to h2init.sql being executed twice against the same database. It fails the second time as the tables already exist. 上面的引用实际上是从here复制的,但它准确地解释了遇到的问题。 因此使用了@peterB建议的解决方案,即使用 "in memory private" connection mode,如下所示: <property name="url" value="jdbc:h2:mem:;DB_CLOSE_ON_EXIT=FALSE;MODE=ORACLE; INIT=RUNSCRIPT FROM 'classpath:sql/h2init.sql';TRACE_LEVEL_FILE=4;TRACE_LEVEL_SYSTEM_OUT=3;" /> 请注意,empdb 已从 jdbc url 中删除,现在一切正常 然而,这现在导致了一个不同的问题 - 早些时候我可以通过以下方式访问 H2 控制台:http://localhost:8082/ 并登录 现在,当我尝试时,它失败了: 数据库 URL“jdbc:h2:mem”中不允许使用隐式相对于当前工作目录的文件路径。请改用绝对路径、~/name、./name 或 baseDir 设置。 [90011-224] 90011/90011(帮助) 我尝试的 jdbc url 是:jdbc:h2:mem: 在运行 munits 时的控制台日志中可以看到我的 munit 与 db 连接良好: INFO 2024-03-03 11:39:00,665 [[MuleRuntime].uber.03: h2database: database opening mem: (build 224) INFO 2024-03-03 11:39:00,715 [[MuleRuntime].uber.03: h2database: database opened mem: 正在阅读 H2 文档:https://www.h2database.com/html/features.html 内存数据库对于某些用例(例如:快速 原型设计、测试、高性能操作、只读 数据库),可能不需要保存数据或保存更改 到数据。该数据库支持内存模式,其中数据 没有坚持下去。 在某些情况下,只有一个与内存数据库的连接 必需的。这意味着要打开的数据库是私有的。在这个 例如,数据库 URL 为 jdbc:h2:mem:在其中打开两个连接 同一个虚拟机意味着打开两个不同的(私有的) 数据库。 有时与同一个内存数据库的多个连接 必需的。在这种情况下,数据库 URL 必须包含名称。例子: jdbc:h2:内存:db1。仅使用此 URL 访问同一数据库才有效 在相同的虚拟机和类加载器环境中。 从另一个进程或另一个进程访问内存数据库 计算机上,您需要在与该计算机相同的进程中启动一个 TCP 服务器 内存数据库已创建。然后其他进程需要 通过 TCP/IP 或 TLS 访问数据库,使用数据库 URL,例如: jdbc:h2:tcp://localhost/mem:db1. 默认情况下,关闭最后一个数据库连接将关闭 数据库。对于内存数据库来说,这意味着内容丢失。 要保持数据库打开,请将 ;DB_CLOSE_DELAY=-1 添加到数据库 URL。 使内存数据库的内容与虚拟数据库的保存时间一样长 机器处于活动状态,使用 jdbc:h2:mem:test;DB_CLOSE_DELAY=-1。这可能 创建内存泄漏,当需要删除数据库时,使用 关机命令。 因此,唯一的问题是当我处于调试模式下的 Munit 中间时,想在浏览器中打开控制台并查看表记录的状态 - 这怎么可能? 从上面的文档中我不确定h2 In memory database private mode是否可能? 未命名的私有内存数据库不在不同连接之间共享,每个连接都有自己独立的数据库。当您只需要一个连接时,您可以使用此类数据库,但无法使用 H2 Console 或任何其他工具来检查它,因为具有相同 URL 的 H2 Console(或其他工具)将获得一个自己的(空)私人数据库。

回答 1 投票 0

H2数据库中用于java中测试类的自定义函数

我的应用程序基于Java和Spring框架以及Oracle数据库,在我的应用程序中我使用下面的查询来获取数据。 询问: 选择 sub.subscriber_id RTRIM ( xmlagg (xmlelement (c,

回答 1 投票 0

使用 Spring Boot 插入内存数据库中的 H2 失败

我在内存数据库中填充 H2 时遇到问题。在我的资源目录中有这个sql脚本 如果存在 BACKPACK_DATA,则删除表; 创建表 BACKPACK_DATA(id int 主键 AUTO_INCREM...

回答 1 投票 0

备份嵌入式数据库(H2)

我正在使用 Spring-boot 和 Jpa 创建一个 Web 应用程序。一切正常。但在测试过程中,我必须手动创建对象实例并为每个测试填充数据库。我很奇怪...

回答 3 投票 0

H2 别名函数被多次调用

所以我创建了一个 H2 别名函数来模拟存储过程的结果。 该存储过程有 3 个声明的 Integer 输入参数。在我的测试中,我按如下方式注册别名。

h2
回答 1 投票 0

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.