prisma - 여러개의 db 연결하기

sangwoo noh·2022년 7월 19일
1

prisma

목록 보기
1/2

prisma 초기 세팅을 끝내고

$ prisma init

이후

root경로에 prisma/schema.prisma가 생길것이다.

나는 이미 존재하는 여러개의 DB를 끌어다가 사용하려고 하기때문에 각각 schema 별로 client를 각각 생성해줘야 한다.

  • 따라서 아래와 같이 schema파일의 이름을 각각 다르게 지정해준다

schema의 내용

  • test.prisma

    -test111.prisma

여기서 중요한점은 output옵션이다.
해당 위치에 각각의 스키마 전용 client를 생성한다는 의미이다.

.env내용

  • 이런 느낌적인 느낌

이미 존재하는 db에서 스키마를 끌어와 연동하기

$ npx prisma db pull --schema ./prisma/test.prisma
  • test스키마를 끌어온 모습

끌어온 스키마를 기준으로 prisma generate하여 client생성하기

$ npx prisma generate --schema ./prisma/test.prisma
  • test.prisma 전용 client가 생성됐다.

(보면 알겠지만 --schema옵션으로 타게팅이 가능하다.--schema 옵션을 제외할경우 전체적인 작업을 하긴 하는데 원하는 의도대로 동작이 이루어지지 않는다.)

test111.prisma도 똑같은 작업을 반복해준다

$ npx prisma db pull --schema ./prisma/test111.prisma
  • test111스키마를 끌어온 모습
$ npx prisma generate --schema ./prisma/test111.prisma

  • test111.prisma 전용 client가 생성됐다.

사용해보기

  • testClient 사용

  • test111Client 사용

각각 잘 동작한다.

profile
하기로 했으면 하자

0개의 댓글