인프런 커뮤니티 질문&답변

김형수님의 프로필 이미지

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

JPA

통합테스트의 회원가입 진행 중 오류가 생겼습니다

해결된 질문

21.11.29 02:51 작성

·

297

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
교수님 안녕하십니까?
수업을 따라가며 진행하는 도중 통합테스트의 회원가입을 실행하였는데
오류가 발생하여 질문드립니다
아무리 구글링해도 이유를 찾을 수 없었습니다..
h2에서 sql로 ID에 null을 넣을 수 없어서 생기는 오류같기는 한데
코드의 어떤부분에서 이런 오류를 발생시킨건지 알려주시면
감사하겠습니다!
사진으로 코드와 에러 첨부합니다

답변 3

1

김영한님의 프로필 이미지
김영한
지식공유자

2021. 12. 01. 22:57

*주의!*

h2 데이터베이스는 꼭 다음 링크에 들어가서 *1.4.200* 버전을 설치해주세요.

최근에 나온 2.0.202 버전을 설치하면 일부 기능이 정상 동작하지 않습니다.

https://www.h2database.com/html/download.html

 

 만약 이미 설치하고 실행까지 했다면 다시 설치한 이후에 *~/test.mv.db* 파일을 꼭 삭제해주세요.

그렇지 않으면 다음 오류가 발생하면서 접속되지 않습니다.

General error: "The write format 1 is smaller than the supported format 2 [2.0.202/5]" [50000-202] HY000/50000

 

0

김형수님의 프로필 이미지
김형수
질문자

2021. 11. 29. 15:37

@GeneratedValue(strategy = GenerationType.IDENTITY) 를

@GeneratedValue(strategy = GenerationType.SEQUENCE)로 바꾸니

정말 해결되었습니다! 감사합니다

근데 어떤 이유때문에 강의와 동일하게 IDENTITY로 하였는데 실행이 되지 않는 건지

궁금합니다..

OMG님의 프로필 이미지

2021. 11. 29. 23:30

테이블 생성 단계에서 문제가 발생한 것이지 않나 싶은데 어제 동일한(비슷한) 문제가 발생한게 조금 의아하기는 합니다. 추후 원인 파악이 되면 답변 드리겠습니다.

OMG님의 프로필 이미지

2021. 11. 30. 22:39

 

최근들어 동일한 문제가 자주 발생하는데요, 

h2 다운 버전이 2.0.202(2021-11-25) 릴리즈 된게 문제이지 않나 예상합니다.

h2 database를 해당 버전으로 설치하셨을까요?

 

김형수님의 프로필 이미지
김형수
질문자

2021. 12. 01. 20:01

넵 맞습니다

Version 1.4.200 (2019-10-14), Last Stable로

다운로드 해야하나요??

OMG님의 프로필 이미지

2021. 12. 01. 21:14

네, 200으로 설치해주세요

0

OMG님의 프로필 이미지

2021. 11. 29. 06:38

안녕하세요. 김형수님, 공식 서포터즈 OMG입니다.

 

최근 질문에 동일한(비슷한) 문제가 발생하여서 해결한 사례가 있습니다.

1.

참고)

could not execute statement 오류가 납니다 - 인프런 | 질문 & 답변 (inflearn.com)

 

2.

안될 경우 아래의 방법을 진행해주세요.

Member 클래스의

@GeneratedValue(strategy = GenerationType.IDENTITY) 를

@GeneratedValue(strategy = GenerationType.SEQUENCE)로 바꿔주세요.

 

참고)

마지막 테스트에서 제약조건 관련 오류 발생합니다. - 인프런 | 질문 & 답변 (inflearn.com)

 

감사합니다.