[ERROR] jpa + MariaDB 테이블 생성 오류

DY_DEV·2023년 8월 21일
0

ERROR

목록 보기
4/4

문제

Paas 방식의 배포를 위해 기존에 연결된 mysql을 끊고 MariaDB를 연동하는 과정에서 직면한 오류였다. 다른 테이블들은 잘 생성이 되는데, 특정 테이블만 SQL syntax 오류가 발생하면서 생성이 안됐다.

try

  1. 문제가 되는 멤버 변수 주석처리 후 확인 > 높은 결합도로 인한 진행 불가.
  2. boolean 타입 재정의 > mariaDB에서 boolean은 bit로 쿼리가 들어간다. 이를 해결하기 위해 "@Column(columnDefinition = "TINYINT(1)")"을 사용 > 문제는 그래도 반복됐다.
  3. 데이터베이스 삭제 후 진행 > 의미 없었다.

해결

문제의 원인은 SQL syntax가 잘못되었던 것이지만 콘솔에 표시된 것 보다 선행된 멤버 변수에서 발생했다.

@Column(nullable = false, columnDefinition = "TEXT CHECK (LENGTH(content) <= 500)")
    private String content;

해당 변수의 columnDefinition은 MariaDB가 지원하지 않는 코드여서 발생한 문제였다.
시야를 더 넓히자😂

0개의 댓글