작성
·
420
1
안녕하세요. 강의 잘 듣고 있습니다.
data.sql 없을 땐 테이블 생성 되고 문제 없었는데
data.sql 파일을 만드니까 테이블 생성하기 전에 insert를 해서 에러가 나는 것 같습니다.
어떻게 해결하면 좋을까요..
insert into user values(1, sysdate(), "eony", "asdf", "941010-2020200"); nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "USER" not found; SQL statement:
insert into user values(1, sysdate(), "eony", "asdf", "941010-2020200") [42102-200]
Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Invocation of init method failed; nested exception is org.springframework.jdbc.datasource.init.ScriptStatementFailedException: Failed to execute SQL script statement #1 of URL [file:/Users/eony/workspace/study/%ec%9d%b8%ed%94%84%eb%9f%b0%ea%b0%95%ec%9d%98/restful-web-service/target/classes/data.sql]: insert into user values(1, sysdate(), "eony", "asdf", "941010-2020200"); nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "USER" not found; SQL statement:
insert into user values(1, sysdate(), "eony", "asdf", "941010-2020200") [42102-200]
답변 4
4
해당에러는 스프링부트 2.5버전부터 하이버네이트와 .sql 간의 순번에 의한 에러인듯합니다. 버전이올라가면서 .sql파일의 우선순위가 높아졌습니다. 아래와같이 설정해주시면됩니다.
defer-datasource-initialization: true
3
안녕하세요, 이도원입니다.
답변이 늦어 죄송합니다.
위에 분이 답변을 먼저 주신것 같습니다. 관련 내용을 아래 게시물에서도 확인해 보실 수 있습니다.
https://www.inflearn.com/questions/224708
감사합니다.
2
1