JPA

H2 쿼리 문법을 MySQL 쿼리 문법으로 변경하여 로그 출력하기

박성민 2021. 5. 12. 22:43

아무 설정도 하지 않은 상태에서의 테이블 생성 쿼리 로그를 보면 H2 문법이 적용되어 있다.

create table car (
    car_id bigint generated by default as identity,
    car_number varchar(255),
    category varchar(255),
    color varchar(255),
    model varchar(255),
    production_year varchar(255),
    purchase_date timestamp,
    vin varchar(255),
    primary key (car_id)
)

application.properties에 코드 추가

spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL57Dialect
spring.jpa.properties.hibernate.dialect.storage_engine=innodb
spring.datasource.hikari.jdbc-url=jdbc:h2:tcp://localhost/~/usedcar;MODE=MYSQL

결과

create table car (
    car_id bigint not null auto_increment,
    car_number varchar(255),
    category varchar(255),
    color varchar(255),
    model varchar(255),
    production_year varchar(255),
    purchase_date datetime(6),
    vin varchar(255),
    primary key (car_id)
) engine=InnoDB

MySQL 문법이 적용된 것을 확인할 수 있다.