package com.example.demo.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Builder
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@DynamicInsert
@DynamicUpdate
@Entity
@Table(name = "sample__member")
public class Member {
@Id
@GeneratedValue( strategy = GenerationType.IDENTITY )
@Column(insertable =false, updatable = false)
private Integer id;
@Column(name = "name")
private String name;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "team_id")
private Team team;
@OneToOne
@JoinColumn(name = "recommended_id", referencedColumnName = "id")
private Member recommendedMember;
@Column(name = "is_captain")
private Integer isCaptain;
}
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
[32m :: Spring Boot :: [39m [2m (v2.7.5)[0;39m
[2m2022-11-06 17:54:18.759[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mc.e.d.QuerydslSampleProjectApplication [0;39m [2m:[0;39m Starting QuerydslSampleProjectApplication using Java 17.0.4.1 on LAPTOP-HQ6L2PC5 with PID 13100 (C:\Users\82109\git\querydsl-sample-project\bin\main started by 82109 in C:\Users\82109\git\querydsl-sample-project)
[2m2022-11-06 17:54:18.761[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mc.e.d.QuerydslSampleProjectApplication [0;39m [2m:[0;39m The following 1 profile is active: "local"
[2m2022-11-06 17:54:19.146[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36m.s.d.r.c.RepositoryConfigurationDelegate[0;39m [2m:[0;39m Bootstrapping Spring Data JPA repositories in DEFAULT mode.
[2m2022-11-06 17:54:19.193[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36m.s.d.r.c.RepositoryConfigurationDelegate[0;39m [2m:[0;39m Finished Spring Data repository scanning in 40 ms. Found 2 JPA repository interfaces.
[2m2022-11-06 17:54:19.530[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.s.b.w.embedded.tomcat.TomcatWebServer [0;39m [2m:[0;39m Tomcat initialized with port(s): 8080 (http)
[2m2022-11-06 17:54:19.538[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.apache.catalina.core.StandardService [0;39m [2m:[0;39m Starting service [Tomcat]
[2m2022-11-06 17:54:19.539[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36morg.apache.catalina.core.StandardEngine [0;39m [2m:[0;39m Starting Servlet engine: [Apache Tomcat/9.0.68]
[2m2022-11-06 17:54:19.620[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.a.c.c.C.[Tomcat].[localhost].[/] [0;39m [2m:[0;39m Initializing Spring embedded WebApplicationContext
[2m2022-11-06 17:54:19.620[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mw.s.c.ServletWebServerApplicationContext[0;39m [2m:[0;39m Root WebApplicationContext: initialization completed in 827 ms
[2m2022-11-06 17:54:19.810[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.hibernate.jpa.internal.util.LogHelper [0;39m [2m:[0;39m HHH000204: Processing PersistenceUnitInfo [name: default]
[2m2022-11-06 17:54:19.844[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36morg.hibernate.Version [0;39m [2m:[0;39m HHH000412: Hibernate ORM core version 5.6.12.Final
[2m2022-11-06 17:54:19.952[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.hibernate.annotations.common.Version [0;39m [2m:[0;39m HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
[2m2022-11-06 17:54:20.024[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mcom.zaxxer.hikari.HikariDataSource [0;39m [2m:[0;39m HikariPool-1 - Starting...
[2m2022-11-06 17:54:20.138[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mcom.zaxxer.hikari.HikariDataSource [0;39m [2m:[0;39m HikariPool-1 - Start completed.
[2m2022-11-06 17:54:20.150[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36morg.hibernate.dialect.Dialect [0;39m [2m:[0;39m HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect
Hibernate:
alter table sample__member
drop
foreign key FK7qb79u73kufstskbsolp0s29o
[2m2022-11-06 17:54:20.576[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860576 | took 20ms | statement | connection 1| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
alter table sample__member
drop
foreign key FK7qb79u73kufstskbsolp0s29o
alter table sample__member
drop
foreign key FK7qb79u73kufstskbsolp0s29o;
[2m2022-11-06 17:54:20.578[0;39m [33m WARN[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.h.t.s.i.ExceptionHandlerLoggedImpl [0;39m [2m:[0;39m GenerationTarget encountered exception accepting command : Error executing DDL "
alter table sample__member
drop
foreign key FK7qb79u73kufstskbsolp0s29o" via JDBC Statement
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "
alter table sample__member
drop
foreign key FK7qb79u73kufstskbsolp0s29o" via JDBC Statement
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlString(SchemaDropperImpl.java:387) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.applySqlStrings(SchemaDropperImpl.java:371) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.applyConstraintDropping(SchemaDropperImpl.java:341) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:235) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:156) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:128) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:114) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:157) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:85) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:335) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.23.jar:5.3.23]
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.23.jar:5.3.23]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.23.jar:5.3.23]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.23.jar:5.3.23]
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.23.jar:5.3.23]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.23.jar:5.3.23]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.23.jar:5.3.23]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.5.jar:2.7.5]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-2.7.5.jar:2.7.5]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.5.jar:2.7.5]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.5.jar:2.7.5]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.5.jar:2.7.5]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.5.jar:2.7.5]
at com.example.demo.QuerydslSampleProjectApplication.main(QuerydslSampleProjectApplication.java:10) ~[main/:na]
Caused by: java.sql.SQLSyntaxErrorException: Can't DROP FOREIGN KEY `FK7qb79u73kufstskbsolp0s29o`; check that it exists
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) ~[mysql-connector-j-8.0.31.jar:8.0.31]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-j-8.0.31.jar:8.0.31]
at com.mysql.cj.jdbc.StatementImpl.executeInternal(StatementImpl.java:763) ~[mysql-connector-j-8.0.31.jar:8.0.31]
at com.mysql.cj.jdbc.StatementImpl.execute(StatementImpl.java:648) ~[mysql-connector-j-8.0.31.jar:8.0.31]
at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:94) ~[HikariCP-4.0.3.jar:na]
at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java) ~[HikariCP-4.0.3.jar:na]
at com.p6spy.engine.wrapper.StatementWrapper.execute(StatementWrapper.java:114) ~[p6spy-3.8.2.jar:na]
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
... 35 common frames omitted
Hibernate:
alter table sample__member
drop
foreign key FKfq1372tp5s7ssf0c6ibeww7o1
[2m2022-11-06 17:54:20.597[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860597 | took 18ms | statement | connection 1| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
alter table sample__member
drop
foreign key FKfq1372tp5s7ssf0c6ibeww7o1
alter table sample__member
drop
foreign key FKfq1372tp5s7ssf0c6ibeww7o1;
Hibernate:
drop table if exists sample__member
[2m2022-11-06 17:54:20.612[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860612 | took 14ms | statement | connection 1| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
drop table if exists sample__member
drop table if exists sample__member;
Hibernate:
drop table if exists sample__team
[2m2022-11-06 17:54:20.628[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860628 | took 15ms | statement | connection 1| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
drop table if exists sample__team
drop table if exists sample__team;
Hibernate:
create table sample__member (
id integer not null auto_increment,
is_captain integer,
name varchar(255),
recommended_id integer,
team_id integer,
primary key (id)
) engine=InnoDB
[2m2022-11-06 17:54:20.644[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860644 | took 13ms | statement | connection 2| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
create table sample__member (
id integer not null auto_increment,
is_captain integer,
name varchar(255),
recommended_id integer,
team_id integer,
primary key (id)
) engine=InnoDB
create table sample__member (
id integer not null auto_increment,
is_captain integer,
name varchar(255),
recommended_id integer,
team_id integer,
primary key (id)
) engine=InnoDB;
Hibernate:
create table sample__team (
id integer not null auto_increment,
name varchar(255),
primary key (id)
) engine=InnoDB
[2m2022-11-06 17:54:20.656[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860656 | took 11ms | statement | connection 2| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
create table sample__team (
id integer not null auto_increment,
name varchar(255),
primary key (id)
) engine=InnoDB
create table sample__team (
id integer not null auto_increment,
name varchar(255),
primary key (id)
) engine=InnoDB;
Hibernate:
alter table sample__member
add constraint FK7qb79u73kufstskbsolp0s29o
foreign key (recommended_id)
references sample__member (id)
[2m2022-11-06 17:54:20.687[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860687 | took 31ms | statement | connection 2| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
alter table sample__member
add constraint FK7qb79u73kufstskbsolp0s29o
foreign key (recommended_id)
references sample__member (id)
alter table sample__member
add constraint FK7qb79u73kufstskbsolp0s29o
foreign key (recommended_id)
references sample__member (id);
Hibernate:
alter table sample__member
add constraint FKfq1372tp5s7ssf0c6ibeww7o1
foreign key (team_id)
references sample__team (id)
[2m2022-11-06 17:54:20.724[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mp6spy [0;39m [2m:[0;39m #1667724860724 | took 36ms | statement | connection 2| url jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=UTF-8
alter table sample__member
add constraint FKfq1372tp5s7ssf0c6ibeww7o1
foreign key (team_id)
references sample__team (id)
alter table sample__member
add constraint FKfq1372tp5s7ssf0c6ibeww7o1
foreign key (team_id)
references sample__team (id);
[2m2022-11-06 17:54:20.726[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.h.e.t.j.p.i.JtaPlatformInitiator [0;39m [2m:[0;39m HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
[2m2022-11-06 17:54:20.731[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mj.LocalContainerEntityManagerFactoryBean[0;39m [2m:[0;39m Initialized JPA EntityManagerFactory for persistence unit 'default'
[2m2022-11-06 17:54:21.191[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.s.b.w.embedded.tomcat.TomcatWebServer [0;39m [2m:[0;39m Tomcat started on port(s): 8080 (http) with context path ''
[2m2022-11-06 17:54:21.198[0;39m [32m INFO[0;39m [35m13100[0;39m [2m---[0;39m [2m[ main][0;39m [36mc.e.d.QuerydslSampleProjectApplication [0;39m [2m:[0;39m Started QuerydslSampleProjectApplication in 2.724 seconds (JVM running for 3.223)