에러

[에러] JdbcSQLException: Table "{{테이블명}}" not found; SQL statement: 에러 해결방법

nan2 2023. 1. 19. 09:26
반응형

spring data jpa 를 사용하면서 자동으로 db에 테이블을 생성한다음 data.sql에서 insert into 할 경우 발생하는 에러

 

이유는 스프링부트 버전 2.5부터는 data.sql 사용 시 설정 방법이 변경되었기 때문이다.

 

내가 사용중인 스프링 부트는 2.7.7 버전

 

- application.yml

spring:
  application:
    name: catalog-service
  datasource:
    driver-class-name: org.h2.Driver
    url: jdbc:h2:mem:test
  h2:
    console:
      enabled: true
      settings:
        web-allow-others: true
      path: /h2-console
  jpa:
    hibernate:
      ddl-auto: create-drop
    show-sql: true
    generate-ddl: true
    defer-datasource-initialization: true	-- 이 부분 추가!!!!!

 

- data.sql

insert into catalog (id, name, stock, price)
    values ('xxxx-001', 'xxxa', 1000, 100);
insert into catalog (id, name, stock, price)
    values ('xxxx-002', 'xxxb', 1500, 200);
insert into catalog (id, name, stock, price)
    values ('xxxx-003', 'xxxxc', 2000, 250);
반응형