Код: Выделить всё
11
UTF-8
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-data-jpa
org.springframework.boot
spring-boot-starter-test
test
junit
junit
3.8.1
test
com.h2database
h2
2.1.214
runtime
org.projectlombok
lombok
1.18.24
com.fasterxml.jackson.core
jackson-databind
org.springframework.boot
spring-boot-maven-plugin
org.apache.maven.plugins
maven-compiler-plugin
3.8.1
org.projectlombok
lombok
1.18.24
Код: Выделить всё
spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.h2.console.enabled=true
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.jpa.hibernate.ddl-auto=update
spring.sql.init.mode=always
spring.sql.init.schema-locations=classpath:schema.sql
spring.sql.init.data-locations=classpath:import.sql
server.port=8081
spring.jpa.show-sql=true
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql=TRACE
spring.h2.console.path=/h2-console
Код: Выделить всё
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Values of types "BINARY(255)" and "CHARACTER VARYING(255)" are not comparable; SQL statement:
alter table backlog_item_tasks add constraint FKigou96u26bqhftbug6ba1akfa foreign key (tasks_id) references task [90110-214]
...
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Values of types "BINARY(255)" and "CHARACTER VARYING(255)" are not comparable; SQL statement:
alter table backlog_item_tasks add constraint FK1jlaqd1fh1t60yjn2mu179ra1 foreign key (backlog_item_id) references backlog_item [90110-214]
...
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Values of types "BINARY(255)" and "CHARACTER VARYING(255)" are not comparable; SQL statement:
alter table estimation_log_entry add constraint FK4qne2wpk2c906qwlb0qt17k7s foreign key (task_id) references task [90110-214]
Я пытаюсь заполнить базу данных h2 необходимыми данными через предварительный подготовленные SQL-скрипты, например, import.sql (
Код: Выделить всё
DML script
Код: Выделить всё
INSERT INTO backlog (id, name, description)
VALUES ('uuid-1', 'Backlog 1', 'Description for backlog 1');
INSERT INTO backlog_item (id, status, story, story_points, summary, type, product_id, release_id, sprint_id, backlog_id)
VALUES ('uuid-2', 'Open', 'Story 1', 5, 'Summary for story 1', 'Feature', 'uuid-product', 'uuid-release', 'uuid-sprint',
'uuid-1');
INSERT INTO task (id, name, description, hours_remaining, volunteer, backlog_item_id)
VALUES ('uuid-3', 'Task 1', 'Description for task 1', 10, 'Volunteer 1', 'uuid-2');
Код: Выделить всё
DDL script
Код: Выделить всё
CREATE TABLE backlog
(
id VARCHAR(255) PRIMARY KEY,
name VARCHAR(255) NOT NULL,
description TEXT
);
CREATE TABLE backlog_item
(
id VARCHAR(255) PRIMARY KEY,
status VARCHAR(255),
story TEXT,
story_points INT,
summary TEXT,
type VARCHAR(255),
product_id VARCHAR(255),
release_id VARCHAR(255),
sprint_id VARCHAR(255),
backlog_id VARCHAR(255),
FOREIGN KEY (backlog_id) REFERENCES backlog (id)
);
CREATE TABLE task
(
id VARCHAR(255) PRIMARY KEY,
name VARCHAR(255) NOT NULL,
description TEXT,
hours_remaining INT,
volunteer VARCHAR(255),
backlog_item_id VARCHAR(255),
FOREIGN KEY (backlog_item_id) REFERENCES backlog_item (id)
);
Код: Выделить всё
1. Simple In-Memory Database
spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
и:
Код: Выделить всё
3. Persistent Database in File
spring.datasource.url=jdbc:h2:file:./data/mydb`
Код: Выделить всё
Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is org.h2.jdbc.JdbcSQLNonTransientConnectionException: Unsupported database file version or invalid file header in file "E:/IdeaProject/PDP1/data/mydb.mv.db" [90048-214]
...
Caused by: org.h2.jdbc.JdbcSQLNonTransientConnectionException: Unsupported database file version or invalid file header in file "E:/IdeaProject/PDP1/data/mydb.mv.db"
...
Caused by: org.h2.mvstore.MVStoreException: The write format 3 is larger than the supported format 2 [2.1.214/5]
Код: Выделить всё
application.properties
spring.datasource.url=jdbc:h2:file:. /data/mydb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
также не работал должным образом из-за блокировки mydb.mv. db.
Ожидается:
Я ожидал получить базу данных H2 w / содержимое внутри IDEA (Intellij IDEA) следующим образом:

Возможно, вопросы №1, №2 и №3 частично с этим связаны.
Подробнее здесь: https://stackoverflow.com/questions/785 ... varying255