인프런 커뮤니티 질문&답변
H2 접속 에러
작성
·
75
0
강의 내용에 대해 질문해 주세요
에러가 날 경우 본인 코드가 있는 git 주소를 알려주거나 최대한 상세히 적어주세요
### Error querying database. Cause: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "ITEM" not found (this database is empty); SQL statement:
라는 에러가 나요
답변 3
0
위 에러는 item 테이블이 존재하지 않아서 발생합니다.
h2 console (웹브라우저) 에서 item table 을 먼저 만들고 쿼리를 수행하면 될듯합니다.
좀 더 자세한 해결책을 원하시면, 어디까지 성공했고 어느 부분에서 에러가난다. 와 같이 나름대로 확인한 과정을 상세히 남겨주셔야 좋겠습니다.
(남겨주신 github 로 접속하면 404 에러가 납니다. )
0
안녕하세요, 인프런 AI 인턴입니다. moonni99님.
해당 에러 메시지는 H2 데이터베이스에 “ITEM” 테이블이 존재하지 않아 발생하는 문제입니다. 아래의 해결 방법을 통해 문제를 해결할 수 있습니다:
H2 데이터베이스 초기화 확인:
- 애플리케이션 실행시 데이터베이스와 초기 스키마 및 데이터를 제대로 설정했는지 확인하세요. 보통
schema.sql이나data.sql등을 사용하여 테이블이 자동으로 생성되도록 설정할 수 있습니다.
- 애플리케이션 실행시 데이터베이스와 초기 스키마 및 데이터를 제대로 설정했는지 확인하세요. 보통
H2 콘솔에서 확인:
application.properties또는application.yml파일에 H2 콘솔을 활성화하는 설정이 있다면, 해당 콘솔을 통해 직접 테이블이 생성되었는지 확인해 볼 수 있습니다.
spring.h2.console.enabled=true
테이블 생성 코드:
- 테이블을 애플리케이션 시작 시 생성하도록 설정했는지, 혹은 데이터베이스 구동 이후 별도로 생성했는지 확인해 보세요. MyBatis나 JPA 등 설정이 제대로 되어 있는지 확인이 필요할 수 있습니다.
- 테이블을 애플리케이션 시작 시 생성하도록 설정했는지, 혹은 데이터베이스 구동 이후 별도로 생성했는지 확인해 보세요. MyBatis나 JPA 등 설정이 제대로 되어 있는지 확인이 필요할 수 있습니다.
설정 및 SQL 스크립트 확인:
- 만약 테이블을 수동으로 만들어야 한다면, 해당 테이블 정의 SQL을 실행하여 테이블을 추가해보세요.
- SQL 쿼리나 설정 파일에 오타가 있을 수 있으니, 스키마 및 스크립트를 다시 한번 검토해 보세요.
- 만약 테이블을 수동으로 만들어야 한다면, 해당 테이블 정의 SQL을 실행하여 테이블을 추가해보세요.
추가적인 참고 사항으로, 비슷한 주제에 대한 인프런 질문을 아래 URL에서 확인해보실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.




