【发布时间】:2020-03-16 18:12:58
【问题描述】:
我有一个 DAO 正在访问 Postgres 数据库。我想将 H2 用于我的单元测试 - 一切都很好,除了我正在操作的表有一个带有 inet 数据类型的列 - 所以我得到了例外
未知数据类型:“inet”; SQL 语句:从表中删除 id = ?和 ip_address = ?::inet [50004-200]
自从我使用 H2 以来已经有一段时间了 - 我已经为连接设置了 Postgres 模式:url jdbc:h2:mem:test;MODE=PostgreSQL;DATABASE_TO_LOWER=TRUE
我是否可以在 H2 中执行此查询并支持此数据类型?
【问题讨论】:
-
考虑使用类似 testcontainers-java 的 postgresql 模块,而不是尝试使用不同的数据库进行单元测试。
-
@MarkRotteveel 太棒了,谢谢。我尝试了 zonky 嵌入式 Postgres,但它无法在 Jenkins 上构建,并且该项目没有提供任何可操作的输出,因此没有关于哪里出了问题的指导。测试容器完美运行。您能否将其发布为答案,以便我接受它
标签: postgresql jdbc h2