以编程方式设置 H2 DB

Posted

技术标签:

【中文标题】以编程方式设置 H2 DB【英文标题】:Setting up H2 DB programmatically 【发布时间】:2021-08-20 15:33:12 【问题描述】:

我正在尝试在我的代码中以编程方式更新内存数据库中的 H2。由于某种奇怪的原因,我似乎无法创建模式或表。没有错误,它似乎不起作用。我可以使用下面的方法创建表,但不能使用模式

Statement stmt = null;
Class.forName("org.h2.Driver");

try (Connection conn = DriverManager.getConnection("jdbc:h2:tcp://localhost:9090/mem:test", "sa","")) 

    //STEP 3: Execute a query
    System.out.println("Creating schema in given database...");
    stmt = conn.createStatement();
    String sql =  "CREATE SCHEMA IF NOT EXISTS TEST";
    stmt.executeUpdate(sql);
    System.out.println("Created schema in given database...");

    stmt.close();

【问题讨论】:

如果你可以创建一个表,那么它似乎可以工作。如果没有错误,你怎么知道它失败了? 【参考方案1】:

据我所知,H2 jdbc url 应该是“jdbc:h2:mem:test”。试试这个。看看有没有帮助。

【讨论】:

以上是关于以编程方式设置 H2 DB的主要内容,如果未能解决你的问题,请参考以下文章

内存数据库中的 H2:使用 JDBC 设置时区? Java 单元测试

通过使用 MySQL 的 DataJpaTest 存储库测试,Hibernate 不会在 H2 DB 中将用户设置为自动增量

以编程方式停止 H2 数据库

如何以编程方式关闭自动亮度?

以编程方式创建新的 H2 服务器

H2 DB Initial Set Up 脚本在 JUNIT 中被多次调用