Skip to content

스프링부트 3.0 버전 이상에서 schema.sql 오류 발생 #6

Description

@rooni97

3.0 버전 업데이트 되면서 의존성 관련해서 뭔가 많이 바뀌었는데
스프링부트 3.1에서는 h2 2.1.214 버전을 써야하는 걸로 알고 있습니다.

H2 버전 관련 부분은 이 분의 블로그를 참고했습니다.
https://velog.io/@gmtmoney2357/스프링-부트-3.0에서-h2-console-404-에러

이 부분에서 문제가 발생 👇

alter table Taco_Ingredients
    add foreign key (ingredient) references Ingredient(id);

처음 스프링 시작할 때 jdbcsqlsyntaxerrorexception: constraint "primary key | unique (id)" not found; 에러가 발생했는데요.

외래키로 거는 컬럼이 unique하지 않으면 외래키 제약 조건 추가가 안되는 것 같습니다.

이전 코드

create table if not exists Ingredient (
    id varchar(4) not null,
    name varchar(25) not null,
    type varchar(10) not null
);

수정 코드

create table if not exists Ingredient (
    id varchar(4) PRIMARY KEY not null,
    name varchar(25) not null,
    type varchar(10) not null
);

PRIMARY KEY를 추가해주니 잘 되는 거 같습니다.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions