spring boot main 프로젝트 해결

[JPA ERROR] Entity 필드에 예약어 사용 에러(Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "\000d\000a)

_DoYun 2022. 9. 16. 16:20
@Entity
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class Email {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long emailId;

    @Column(nullable = false)
    private String code;

    @Column(nullable = false)
    private String name;

    @Column(nullable = false)
    private String password;

    @Column(nullable = false)
    private String email;


    private String career;

    @Column(nullable = false)
    private String aboutMe;

    @Column(nullable = false)
    private String nickName;

    @Column(nullable = false)
    private String user;


}

위는 당시 Email 엔티티 클래스입니다. 해당 엔티티를 다음과 같이 설정하고 프로젝트를 실행 했었는데 에러가 발생했었습니다. 

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "\000d\000a ~~~~~~

 

위 에러는 entity 정보가 DB에 저장될 때 해당 entity의 이름 또는 필드 값의 이름이 예약어 중 하나이면 발생하는 에러입니다. 

예약어는 예를 들어 user, key 등이 있습니다. 

 

해당 에러가 발생하면 예약어로 의심되는 필드 또는 Entity 이름을 변경하시기 바랍니다.