인프런 커뮤니티 질문&답변

edgarlee9364님의 프로필 이미지
edgarlee9364

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

property name="hibernate.hbm2ddl.auto" value="create" 문제인가요?

작성

·

323

0

섹션 9 값 타입 부분의 값 타입과 불변 객체 실습을 진행하고 있는데 계속 다음과 같은 에러가 떠서 아래와 같이 첨부합니다

 

8월 23, 2023 5:18:29 오후 org.hibernate.jpa.internal.util.LogHelper logPersistenceUnitInformation

INFO: HHH000204: Processing PersistenceUnitInfo [

name: hello

...]

8월 23, 2023 5:18:29 오후 org.hibernate.Version logVersion

INFO: HHH000412: Hibernate Core {5.3.10.Final}

8월 23, 2023 5:18:29 오후 org.hibernate.cfg.Environment <clinit>

INFO: HHH000206: hibernate.properties not found

8월 23, 2023 5:18:30 오후 org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>

INFO: HCANN000001: Hibernate Commons Annotations {5.0.4.Final}

8월 23, 2023 5:18:33 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure

WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!)

8월 23, 2023 5:18:33 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator

INFO: HHH10001005: using driver [org.h2.Driver] at URL [jdbc:h2:tcp://localhost/~/test]

8월 23, 2023 5:18:33 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator

INFO: HHH10001001: Connection properties: {user=sa}

8월 23, 2023 5:18:33 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator

INFO: HHH10001003: Autocommit mode: false

8월 23, 2023 5:18:33 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PooledConnections <init>

INFO: HHH000115: Hibernate connection pool size: 20 (min=1)

8월 23, 2023 5:18:33 오후 org.hibernate.dialect.Dialect <init>

INFO: HHH000400: Using dialect: org.hibernate.dialect.H2Dialect

Hibernate:

drop table Child if exists

Hibernate:

drop table Item if exists

Hibernate:

drop table Member if exists

8월 23, 2023 5:18:35 오후 org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection

INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@5db6b845] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode.

8월 23, 2023 5:18:35 오후 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException

WARN: GenerationTarget encountered exception accepting command : Error executing DDL "

drop table Member if exists" via JDBC Statement

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "

drop table Member if exists" via JDBC Statement

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlString(SchemaDropperImpl.java:375)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlStrings(SchemaDropperImpl.java:359)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:241)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:154)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:126)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:112)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:144)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72)

at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310)

at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467)

at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939)

at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

at hellojpa.JpaMain.main(JpaMain.java:15)

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Cannot drop "MEMBER" because "FKJNJ8UNGT7V35Y6LFXUXCRJBBR" depends on it; SQL statement:

drop table Member if exists [90107-200]

at org.h2.message.DbException.getJdbcSQLException(DbException.java:576)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)

at org.h2.message.DbException.get(DbException.java:205)

at org.h2.command.ddl.DropTable.prepareDrop(DropTable.java:98)

at org.h2.command.ddl.DropTable.update(DropTable.java:124)

at org.h2.command.CommandContainer.update(CommandContainer.java:198)

at org.h2.command.Command.executeUpdate(Command.java:251)

at org.h2.server.TcpServerThread.process(TcpServerThread.java:406)

at org.h2.server.TcpServerThread.run(TcpServerThread.java:183)

at java.base/java.lang.Thread.run(Thread.java:833)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:573)

at org.h2.engine.SessionRemote.done(SessionRemote.java:607)

at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237)

at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)

at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)

... 15 more

8월 23, 2023 5:18:35 오후 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException

WARN: GenerationTarget encountered exception accepting command : Error executing DDL "

drop table Team if exists" via JDBC Statement

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "

drop table Team if exists" via JDBC Statement

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlString(SchemaDropperImpl.java:375)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlStrings(SchemaDropperImpl.java:359)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:241)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:154)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:126)

at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:112)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:144)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72)

at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310)

at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467)

at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939)

at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

at hellojpa.JpaMain.main(JpaMain.java:15)

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Cannot drop "TEAM" because "FKL7WSNY760HJY6X19KQNDUASBM" depends on it; SQL statement:

drop table Team if exists [90107-200]

at org.h2.message.DbException.getJdbcSQLException(DbException.java:576)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)

at org.h2.message.DbException.get(DbException.java:205)

at org.h2.command.ddl.DropTable.prepareDrop(DropTable.java:98)

at org.h2.command.ddl.DropTable.update(DropTable.java:124)

at org.h2.command.CommandContainer.update(CommandContainer.java:198)

at org.h2.command.Command.executeUpdate(Command.java:251)

at org.h2.server.TcpServerThread.process(TcpServerThread.java:406)

at org.h2.server.TcpServerThread.run(TcpServerThread.java:183)

at java.base/java.lang.Thread.run(Thread.java:833)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:573)

at org.h2.engine.SessionRemote.done(SessionRemote.java:607)

at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237)

at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)

at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)

... 15 more

Hibernate:

drop table MemberProduct if exists

Hibernate:

drop table Parent if exists

Hibernate:

drop table Product if exists

Hibernate:

drop table Team if exists

Hibernate:

drop sequence if exists hibernate_sequence

Hibernate: create sequence hibernate_sequence start with 1 increment by 1

Hibernate:

create table Child (

id bigint not null,

name varchar(255),

parent_id bigint,

primary key (id)

)

Hibernate:

create table Item (

DTYPE varchar(31) not null,

id bigint not null,

name varchar(255),

price integer not null,

artist varchar(255),

author varchar(255),

isbn varchar(255),

actor varchar(255),

director varchar(255),

primary key (id)

)

Hibernate:

create table Member (

MEMBER_ID bigint not null,

city varchar(255),

street varchar(255),

ZIPCODE varchar(255),

USERNAME varchar(255),

endDate timestamp,

startDate timestamp,

TEAM_ID bigint,

primary key (MEMBER_ID)

)

Hibernate:

create table MemberProduct (

id bigint not null,

count integer not null,

orderDateTime timestamp,

price integer not null,

MEMBER_ID bigint,

PRODUCT_ID bigint,

primary key (id)

)

Hibernate:

create table Parent (

id bigint not null,

name varchar(255),

primary key (id)

)

8월 23, 2023 5:18:35 오후 org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl getIsolatedConnection

INFO: HHH10001501: Connection obtained from JdbcConnectionAccess [org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess@29a98d9f] for (non-JTA) DDL execution was not in auto-commit mode; the Connection 'local transaction' will be committed and the Connection will be set into auto-commit mode.

8월 23, 2023 5:18:35 오후 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException

WARN: GenerationTarget encountered exception accepting command : Error executing DDL "

create table Member (

MEMBER_ID bigint not null,

city varchar(255),

street varchar(255),

ZIPCODE varchar(255),

USERNAME varchar(255),

endDate timestamp,

startDate timestamp,

TEAM_ID bigint,

primary key (MEMBER_ID)

)" via JDBC Statement

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "

create table Member (

MEMBER_ID bigint not null,

city varchar(255),

street varchar(255),

ZIPCODE varchar(255),

USERNAME varchar(255),

endDate timestamp,

startDate timestamp,

TEAM_ID bigint,

primary key (MEMBER_ID)

)" via JDBC Statement

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlString(SchemaCreatorImpl.java:440)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlStrings(SchemaCreatorImpl.java:424)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:315)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:166)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:135)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:121)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:155)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72)

at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310)

at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467)

at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939)

at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

at hellojpa.JpaMain.main(JpaMain.java:15)

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "MEMBER" already exists; SQL statement:

create table Member (

MEMBER_ID bigint not null,

city varchar(255),

street varchar(255),

ZIPCODE varchar(255),

USERNAME varchar(255),

endDate timestamp,

startDate timestamp,

TEAM_ID bigint,

primary key (MEMBER_ID)

) [42101-200]

at org.h2.message.DbException.getJdbcSQLException(DbException.java:453)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)

at org.h2.message.DbException.get(DbException.java:205)

at org.h2.message.DbException.get(DbException.java:181)

at org.h2.command.ddl.CreateTable.update(CreateTable.java:89)

at org.h2.command.CommandContainer.update(CommandContainer.java:198)

at org.h2.command.Command.executeUpdate(Command.java:251)

at org.h2.server.TcpServerThread.process(TcpServerThread.java:406)

at org.h2.server.TcpServerThread.run(TcpServerThread.java:183)

at java.base/java.lang.Thread.run(Thread.java:833)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:451)

at org.h2.engine.SessionRemote.done(SessionRemote.java:607)

at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237)

at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)

at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)

... 15 more

8월 23, 2023 5:18:35 오후 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException

WARN: GenerationTarget encountered exception accepting command : Error executing DDL "

create table Team (

TEAM_ID bigint not null,

INSERT_MEMBER varchar(255),

createdDate timestamp,

UPDATE_MEMBER varchar(255),

lastModifiedDate timestamp,

name varchar(255),

primary key (TEAM_ID)

)" via JDBC Statement

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "

create table Team (

TEAM_ID bigint not null,

INSERT_MEMBER varchar(255),

createdDate timestamp,

UPDATE_MEMBER varchar(255),

lastModifiedDate timestamp,

name varchar(255),

primary key (TEAM_ID)

)" via JDBC Statement

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlString(SchemaCreatorImpl.java:440)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlStrings(SchemaCreatorImpl.java:424)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:315)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:166)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:135)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:121)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:155)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72)

at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310)

at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467)

at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939)

at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

at hellojpa.JpaMain.main(JpaMain.java:15)

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "TEAM" already exists; SQL statement:

create table Team (

TEAM_ID bigint not null,

INSERT_MEMBER varchar(255),

createdDate timestamp,

UPDATE_MEMBER varchar(255),

lastModifiedDate timestamp,

name varchar(255),

primary key (TEAM_ID)

) [42101-200]

at org.h2.message.DbException.getJdbcSQLException(DbException.java:453)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)

at org.h2.message.DbException.get(DbException.java:205)

at org.h2.message.DbException.get(DbException.java:181)

at org.h2.command.ddl.CreateTable.update(CreateTable.java:89)

at org.h2.command.CommandContainer.update(CommandContainer.java:198)

at org.h2.command.Command.executeUpdate(Command.java:251)

at org.h2.server.TcpServerThread.process(TcpServerThread.java:406)

at org.h2.server.TcpServerThread.run(TcpServerThread.java:183)

at java.base/java.lang.Thread.run(Thread.java:833)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:451)

at org.h2.engine.SessionRemote.done(SessionRemote.java:607)

at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237)

at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)

at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)

... 15 more

Hibernate:

create table Product (

id bigint not null,

name varchar(255),

primary key (id)

)

Hibernate:

create table Team (

TEAM_ID bigint not null,

INSERT_MEMBER varchar(255),

createdDate timestamp,

UPDATE_MEMBER varchar(255),

lastModifiedDate timestamp,

name varchar(255),

primary key (TEAM_ID)

)

Hibernate:

alter table Child

add constraint FKlh67j1n7x7gt59u0pbkwqh6o6

foreign key (parent_id)

references Parent

Hibernate:

alter table Member

add constraint FKl7wsny760hjy6x19kqnduasbm

foreign key (TEAM_ID)

references Team

Hibernate:

alter table MemberProduct

add constraint FKjnj8ungt7v35y6lfxuxcrjbbr

foreign key (MEMBER_ID)

references Member

Hibernate:

alter table MemberProduct

add constraint FKrgt6jorh7iaec1tae84ljye8c

foreign key (PRODUCT_ID)

references Product

8월 23, 2023 5:18:35 오후 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException

WARN: GenerationTarget encountered exception accepting command : Error executing DDL "

alter table Member

add constraint FKl7wsny760hjy6x19kqnduasbm

foreign key (TEAM_ID)

references Team" via JDBC Statement

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "

alter table Member

add constraint FKl7wsny760hjy6x19kqnduasbm

foreign key (TEAM_ID)

references Team" via JDBC Statement

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlString(SchemaCreatorImpl.java:440)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlStrings(SchemaCreatorImpl.java:424)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:375)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:166)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:135)

at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:121)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:155)

at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72)

at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310)

at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467)

at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939)

at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)

at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

at hellojpa.JpaMain.main(JpaMain.java:15)

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Constraint "FKL7WSNY760HJY6X19KQNDUASBM" already exists; SQL statement:

alter table Member

add constraint FKl7wsny760hjy6x19kqnduasbm

foreign key (TEAM_ID)

references Team [90045-200]

at org.h2.message.DbException.getJdbcSQLException(DbException.java:576)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)

at org.h2.message.DbException.get(DbException.java:205)

at org.h2.message.DbException.get(DbException.java:181)

at org.h2.command.ddl.AlterTableAddConstraint.tryUpdate(AlterTableAddConstraint.java:114)

at org.h2.command.ddl.AlterTableAddConstraint.update(AlterTableAddConstraint.java:78)

at org.h2.command.CommandContainer.update(CommandContainer.java:198)

at org.h2.command.Command.executeUpdate(Command.java:251)

at org.h2.server.TcpServerThread.process(TcpServerThread.java:406)

at org.h2.server.TcpServerThread.run(TcpServerThread.java:183)

at java.base/java.lang.Thread.run(Thread.java:833)

at org.h2.message.DbException.getJdbcSQLException(DbException.java:573)

at org.h2.engine.SessionRemote.done(SessionRemote.java:607)

at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237)

at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)

at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)

at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)

... 15 more

8월 23, 2023 5:18:35 오후 org.hibernate.tool.schema.internal.SchemaCreatorImpl applyImportSources

INFO: HHH000476: Executing import script 'org.hibernate.tool.schema.internal.exec.ScriptSourceInputNonExistentImpl@45cec376'

Hibernate:

call next value for hibernate_sequence

Hibernate:

call next value for hibernate_sequence

Hibernate:

/* insert hellojpa.Member

*/ insert

into

Member

(city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID)

values

(?, ?, ?, ?, ?, ?, ?)

Hibernate:

/* insert hellojpa.Member

*/ insert

into

Member

(city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID)

values

(?, ?, ?, ?, ?, ?, ?)

8월 23, 2023 5:18:36 오후 org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl release

INFO: HHH000010: On release of batch it still contained JDBC statements

8월 23, 2023 5:18:36 오후 org.hibernate.engine.jdbc.batch.internal.BatchingBatch performExecution

ERROR: HHH000315: Exception executing batch [org.h2.jdbc.JdbcBatchUpdateException: Unique index or primary key violation: "PRIMARY KEY ON PUBLIC.MEMBER(MEMBER_ID) [2, 'newCity', 'street', '10000', 'member2', NULL, NULL, NULL]"; SQL statement:

/* insert hellojpa.Member / insert into Member (city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID) values (?, ?, ?, ?, ?, ?, ?) [23505-199]], SQL: / insert hellojpa.Member */ insert into Member (city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID) values (?, ?, ?, ?, ?, ?, ?)

8월 23, 2023 5:18:36 오후 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions

WARN: SQL Error: 23505, SQLState: 23505

8월 23, 2023 5:18:36 오후 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions

ERROR: Unique index or primary key violation: "PRIMARY KEY ON PUBLIC.MEMBER(MEMBER_ID) [2, 'newCity', 'street', '10000', 'member2', NULL, NULL, NULL]"; SQL statement:

/* insert hellojpa.Member */ insert into Member (city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID) values (?, ?, ?, ?, ?, ?, ?) [23505-199]

8월 23, 2023 5:18:36 오후 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions

ERROR: Unique index or primary key violation: "PRIMARY KEY ON PUBLIC.MEMBER(MEMBER_ID) [1, 'newCity', 'street', '10000', 'member1', NULL, NULL, NULL]"; SQL statement:

/* insert hellojpa.Member */ insert into Member (city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID) values (?, ?, ?, ?, ?, ?, ?) [23505-199]

8월 23, 2023 5:18:36 오후 org.hibernate.internal.ExceptionMapperStandardImpl mapManagedFlushFailure

ERROR: HHH000346: Error during managed flush [org.hibernate.exception.ConstraintViolationException: could not execute batch]

javax.persistence.RollbackException: Error while committing the transaction

at org.hibernate.internal.ExceptionConverterImpl.convertCommitException(ExceptionConverterImpl.java:81)

at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:107)

at hellojpa.JpaMain.main(JpaMain.java:39)

Caused by: javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute batch

at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154)

at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181)

at org.hibernate.internal.ExceptionConverterImpl.convertCommitException(ExceptionConverterImpl.java:65)

... 2 more

Caused by: org.hibernate.exception.ConstraintViolationException: could not execute batch

at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:112)

at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)

at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113)

at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.performExecution(BatchingBatch.java:129)

at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.doExecuteBatch(BatchingBatch.java:105)

at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.execute(AbstractBatchImpl.java:147)

at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.executeBatch(JdbcCoordinatorImpl.java:212)

at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:633)

at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:478)

at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:356)

at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)

at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1454)

at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:511)

at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3290)

at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2486)

at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:473)

at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:178)

at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$300(JdbcResourceLocalTransactionCoordinatorImpl.java:39)

at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit(JdbcResourceLocalTransactionCoordinatorImpl.java:271)

at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:104)

... 1 more

Caused by: org.h2.jdbc.JdbcBatchUpdateException: Unique index or primary key violation: "PRIMARY KEY ON PUBLIC.MEMBER(MEMBER_ID) [2, 'newCity', 'street', '10000', 'member2', NULL, NULL, NULL]"; SQL statement:

/* insert hellojpa.Member */ insert into Member (city, street, ZIPCODE, USERNAME, endDate, startDate, MEMBER_ID) values (?, ?, ?, ?, ?, ?, ?) [23505-199]

at org.h2.jdbc.JdbcPreparedStatement.executeBatch(JdbcPreparedStatement.java:1298)

at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.performExecution(BatchingBatch.java:119)

... 17 more

8월 23, 2023 5:18:36 오후 org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl stop

INFO: HHH10001008: Cleaning up connection pool [jdbc:h2:tcp://localhost/~/test]

Process finished with exit code 0

참고로 이전에 create-drop을 사용해 테이블을 삭제했습니다.

답변 2

0

안녕하세요.edgarlee9364님, 공식 서포터즈 OMG입니다.

도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다. 코드를 확인해봐야 알 것 같습니다.

실제 동작하는 전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx


주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요


추가로 다음 내용도 코멘트 부탁드립니다.

1. 문제 영역을 실행할 수 있는 방법

2. 문제가 어떻게 나타나는지에 대한 상세한 설명

감사합니다.

0

안녕하세요, 인프런 AI 인턴이에요. 해당 에러는 hibernate.properties 파일을 찾지 못해서 발생하는 것 같습니다. hibernate.properties 파일은 Hibernate 설정 파일인데, 해당 파일이 프로젝트에 없어서 생기는 문제입니다.

해결 방법으로는 다음과 같은 것들이 있을 수 있습니다:
1. 프로젝트에 hibernate.properties 파일을 추가해보세요. 파일을 생성하고 필요한 설정들을 추가해주면 됩니다.
2. 혹은 Hibernate 설정을 XML 파일로 변경하고, XML 파일 안에 설정 내용을 추가해보세요. 이 방법을 사용하면 hibernate.properties 파일을 찾는 문제가 생기지 않습니다.

이 외에도 여러가지 문제가 겹쳐서 발생할 수 있는데, 에러 메시지의 끝이 “HHH10001001: Connecti”로 끝나고 나머지 부분이 생략되어 있습니다. 추가적인 내용이 있다면 좀 더 자세하게 알려주세요. 감사합니다.

edgarlee9364님의 프로필 이미지
edgarlee9364

작성한 질문수

질문하기