1 분 소요

Prisma

  • 오픈소스 프로젝트 이며
  • Typescript 와 Node.js 환경에서 데이터베이스에 대한 접근을 쉽게 하도록 도와주는 소프트웨어이다.

설치방법

npm install prisma --save-dev  
npm install @prisma/client --save-dev

npm install dotenv nodemon -D 
//nodemon 코드가 변경되어도 서버를 재실헹하지 않아도 된다.
//dotenv 환경 변수를 사용할 수 있다.

Prisma 연결

npx prisma //명령어 확인
npx prisma init //prisma 초기 세팅

prisma init을 활용해서 초기 세팅을 진행하면

해당 폴더 안에 prisma 라는 파일이 생기게 되고

폴더 안에 shame.prisma 라는 파일이 생기고

//prisma/schema.prisma
datasource db {
  provider = "mysql"             //실행 데이터베이스 타입
  url      = env("DATABASE_URL")   //실행 데이터베이스 경로 
}

.env 라는 파일도 생긴다.

//.env
DATABASE_URL = "mysql://USERNAME:PASSWORD@localhost:3306/DATABASE_NAME"

prisma 파일 안에 테이블 생성할 코드를 작성해 준다.

//prisma/schema.prisma
datasource db {
  provider = "mysql"             //실행 데이터베이스 타입
  url      = env("DATABASE_URL")   //실행 데이터베이스 경로 
}
model User {  //테이블 예시
  id         Int          @id @default(autoincrement())
  email      String       @unique
  password   String
  created_at DateTime?    @default(now())
  updated_at DateTime?        //? null일수도 있는 값에 붙여준다.
  deleted_at DateTime?
  articles   articles?       //일대일 연결
  comments   comments[]      //일대다 연결
}
model articles {
  id         Int             @id @default(autoincrement())   //default값을 자동으로  증가
  user_id    Int
  title      String
  body       String
  created_at DateTime?       @default(now())   //default  현재 시간
  updated_at DateTime?
  deleted_at DateTime?
  users      User           @relation(fields: [user_id], references: [id])   //외래키  
  comments   comments[]

}

다 작성하고

npx prisma migrate dev --name 폴더이름

명령어를 작성해주면

image-20220317171955604

이런 구조로 앞에 숫자 폴더이름 의 폴더가 생성되고 그 안에 prisma 폴더에 적힌 코드들이

sql 문법으로 변환이 되고 작성되었다.

카테고리:

업데이트:

댓글남기기