환경설정
ORM으로는 prisma를 사용할 것이다.
prisma는 GraphQL을 이용하는 Backend server를 제공해주고,
서비스 초기 세팅을 빠르고 쉽게할 수 있다!
DB로는 postgresql을 사용할 것이다. 이를 돕기 위해
postgres app 다운로드
여기서 postgres app을 다운로드 한다.
이를 활용하면 쉽게 데이터베이스를 만들 수 있다.
단순히 저 아이콘을 더블클릭하면 터미널이 실행되는데
postgres=# CREATE DATABASE 데이터베이스명;
만 하면 데이터베이스가 만들어진다.
이제 .env 파일로 가서
DATABASE_URL="postgresql://사용자명:randompassword@localhost:5432/데이터베이스명?schema=public"
이 부분을 변경해준다. randompassword은 아직 개발 중이기 때문에 쉽게 접근할 수 있도록 되어있는 것이다.
그래서 이 부분은 prisma를 설치할 때 생긴 파일인 schema.prisma에서
datasource db {
provider = "postgresql"
url = env("DATABASE_URL") #이 부분
}
데이터베이스와 연결해준다.
model
이제 데이터베이스에 데이터를 만들어보자!
schema.prisma 파일에
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
}
model Movie {
id Int @id @default(autoincrement())
title String
year Int
genre String?
createdAt DateTime @default(now())
updateAt DateTime @updatedAt
}
autoincrement() : 자동으로 증가
now() : 현재 시간
@updatedAt : 업데이트한 시간 저장
Type? : null을 허용하고 싶은경우
이제 prisma migrate를 하여 model을 실제 DB에 만들어보자
npx prisma migrate dev
여기서 migrate dev는 아직 테스트 중이라는 의미
이를 실행한 결과
prisma는 schema.prisma에 내용을 SQL 코드로 변환해주고 실제 데이터베이스에도 적용한다.