13강 과정에 질문있습니다.
627
작성한 질문수 14
13강 과정에 질문있습니다.
강의 마지막에 도서관리 애플리케이션에서
데이터 입력 하는 단계에서 에러가 나오고 있습니다.
화면에선 서버 내부 에러 라고 나오고,
로그창에서는
"INSERT INTO [*]USER(name, age) VALUES(?, ?)"; expected "identifier"; SQL statement:
INSERT INTO USER(name, age) VALUES(?, ?) [42001-214]] with root cause
org.h2.jdbc.JdbcSQLSyntaxErrorException: SQLステートメントに文法エラーがあります "INSERT INTO [*]USER(name, age) VALUES(?, ?)"; 期待されるステートメント "identifier"
: SQL Statement에 문법 에러가 있습니다.
"INSERT INTO [*]USER(name, age) VALUES(?, ?)"에 "identifier"가 요구됩니다.
Syntax error in SQL statement "INSERT INTO [*]USER(name, age) VALUES(?, ?)"; expected "identifier"; SQL statement:
INSERT INTO USER(name, age) VALUES(?, ?) [42001-214]
답변 1
0
안녕하세요!! 질문 올려주셔서 감사합니다~ 😊
현재 보내주신 로그를 확인해 보았을 때는 MySQL 이 설정되지 않고, H2 가 설정된 것 같습니다!! 😭
org.h2.jdbc.JdbcSQLSyntaxErrorException: SQLステートメントに文法エラーがあります "INSERT INTO [*]USER(name, age) VALUES(?, ?)"; 期待されるステートメント "identifier"
(라는 부분에서 "org.h2.xxx" 라고 나와 있어서 추측해보았습니다!)
따라서
MySQL이 잘 적용될 수 있도록
application.yml을 한 번더 확인해주시거나H2를 계속 사용하실 생각이라면, <38강. profile과 H2 DB>에서 설명드리는 설정을 적용해 위의 에러를 해결할 수 있을 것으로 예상됩니다.
에러의 원인은 H2에서 "user"라는 이름이 어떠한 명령어로 예약되어 있기 때문입니다! 따라서 user 테이블을 사용하면, H2는 예약된 명령어라고 에러를 발생시키게 되요. 이를 막기 위해서는 테이블의 이름을 변경할 수도 있고, 38강에서 적용하고 있는
NON_KEYWORDS=USER옵션을 쓸 수도 있습니다.
꼭 해결되셨으면 좋겠습니다. 감사합니다! 🙏
패키지 구분에 대해 궁금한게 있습니다
0
20
2
리액트 관련 질문이 있습니다.
0
64
2
스프링부트 버전
0
73
2
7강 강의를 들으려고 했는데 오류가 나서 서버가 안 켜지는거 같아요.
0
59
2
33강. UserLoanHistory의 관계성에 대한 질문
1
56
2
Java JDK 버전 문의의 건
0
132
2
ec2 에서 Linux버전이 달라져서 설치가 안되는것 같은데 자료 최신화좀 해주세요.
0
88
3
h2 console 접속했을 테이블 질문
1
65
1
ec2 서버에서 스프링 실행도 되고 인바운드 설정까지 했는데 index.html 안됨
0
75
2
15강. updateUser() 질문
0
55
2
깃허브 질
0
82
2
여기까지 다 끝냈다고 하셨는데
0
79
2
왜안될까요
0
70
2
MySQL 창이안ㄴ뜹니다
0
59
2
포스트맨
0
50
1
spring 개념적인 질문
0
71
2
인텔리제이 샘플코드 실행 안됨 오류
0
140
2
aws 배포할때 .env 파일에 저장한 환경변수에 관하여 여쭤볼게 있습니다
0
84
1
마이그레이션 오류입니다.
0
171
3
Whitelabel Error Page 오류가 났습니다.
0
163
2
안녕하십니까! 오류가 났습니다.. 도와주세요 ㅜㅜ
1
93
3
궁금한게 있습니다.
0
60
2
DTO 관련
0
70
2
궁금한게 있습니다!
0
68
2





