schema.sql 와 data.sql

스프링부트에서 제공하는 SQL 로딩기능에 사용할 SQL 문을 저장하는 파일.

두 스크립트에는 모두 애플리케이션 로딩 시 초기에 실행하고 싶은 sql 문을 작성합니다.

사실 두 스크립트 파일명은 엄밀히 다른 목적의 스크립트를 작성하도록 고안되었지만, 사실 한 곳에 다 써도 무방하다고 합니다.

하지만 우선순위가 존재합니다. 뒤에서 설명을 하겠습니다.

사용 방법

사용 예시 참고

spring boot 애플리케이션에서, /resource 디렉토리에 위치해놓으면 된다.

기본적으로, 스프링부트에서는 embedded in-memory database 를 사용하는 경우에만 스크립트를 통한 데이터베이스 초기화가 이루어진다고 합니다.

이 옵션을 변경해서, 항상 데이터베이스 초기화를 실행하고 싶은 경우 application.properties에 다음을 명시해주면 됩니다.

spring.sql.init.mode=always

만약 embedded in-memory database 포함, 어떤 경우에도 데이터베이스 초기화가 이루어지지 않도록 하기 위해서는 다음과 같이 설정해주면 됩니다.

spring.sql.init.mode=never