我正在尝试从 SQL 文件创建内存中的 H2 数据库,如文档中所示。
我将tables.sql文件保存在src/main/resources/sql/文件夹中,并尝试按如下方式创建数据库。
public static HikariConfig getHikariConfigH2(String schema, String pathToSchemaSql) {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:h2:mem:" + schema + ";DATABASE_TO_UPPER=false;"
+ "MODE=MySQL"
+ ";DB_CLOSE_DELAY=-1"
+ ";INIT=create schema if not exists " + schema + "\\;SET SCHEMA " + schema + "\\;"
+ "INIT=runscript from '" + pathToSchemaSql + "'"
);
config.setUsername("sa");
config.setPassword("");
return config;
}
public void testSetup() { > HikariConfig configurationMaster = getHikariConfigH2("schema_name",
"src/main/resources/sql/tables.sql");
DataSource master = new HikariDataSource(configurationMaster);
}
tables.sql 文件的内容是
CREATE TABLE item_types (
id int NOT NULL,
typeName varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
我不确定为什么它期待插入语句。
有人可以帮忙吗
守着一只汪
相关分类