티스토리 뷰

반응형

 

✅ Prisma로 TypeScript + PostgreSQL 프로젝트 처음부터 시작하기

"처음부터 TypeScript 프로젝트에 Prisma와 PostgreSQL을 도입한다면?"


프론트엔드 또는 백엔드 개발자라면 **ORM(Object Relational Mapping)**의 중요성을 알고 계실 겁니다.
그 중에서도 Prisma는 타입 안정성과 개발 편의성을 동시에 제공하는 현대적인 ORM입니다.

이 글은 아예 새로운 TypeScript 프로젝트에서 Prisma + PostgreSQL 조합을 구축하는 방법을 다룹니다.
완전히 처음 시작하는 분들도 따라올 수 있도록 차근차근 설명드리겠습니다.


🧱 1. 새 Node.js 프로젝트 생성

mkdir prisma-starter && cd prisma-starter
npm init -y

⚙️ 2. Prisma와 TypeScript 설치

npm install prisma --save-dev
npm install @prisma/client
npm install typescript ts-node @types/node --save-dev

🗂 3. TypeScript 환경 설정

반응형

tsconfig.json 생성:

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "CommonJS",
    "strict": true,
    "esModuleInterop": true,
    "outDir": "dist"
  },
  "include": ["src"]
}

🚀 4. Prisma 초기화

npx prisma init

실행 결과:

  • prisma/schema.prisma: Prisma 모델 파일
  • .env: DB 연결 문자열 설정 파일

🔗 5. PostgreSQL 연결 설정

.env 파일을 아래와 같이 수정합니다:

DATABASE_URL="postgresql://USER:PASSWORD@localhost:5432/mydb?schema=public"

🔐 USER, PASSWORD, mydb는 사용자의 PostgreSQL 정보에 맞게 수정하세요.


📐 6. Prisma 모델 정의하기

prisma/schema.prisma 수정 예시:

generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model User {
  id    Int     @id @default(autoincrement())
  name  String
  email String  @unique
}

📤 7. 마이그레이션으로 DB 스키마 반영

npx prisma migrate dev --name init

이 명령어는:

  • 실제 PostgreSQL DB에 테이블을 생성하고
  • Prisma Client를 자동으로 생성합니다

🔍 8. Prisma Client 테스트

mkdir src
touch src/index.ts

src/index.ts 작성:

import { PrismaClient } from '@prisma/client'

const prisma = new PrismaClient()

async function main() {
  const newUser = await prisma.user.create({
    data: {
      name: '훈창',
      email: 'hoon@example.com',
    },
  })

  console.log('✅ 유저 생성 완료:', newUser)

  const users = await prisma.user.findMany()
  console.log('📋 모든 유저:', users)
}

main()
  .catch((e) => {
    console.error(e)
  })
  .finally(async () => {
    await prisma.$disconnect()
  })

▶️ 실행

npx ts-node src/index.ts

정상적으로 작동하면 PostgreSQL에 User 테이블이 생성되고, 콘솔에 유저 정보가 출력됩니다.


✅ 요약 정리

단계 설명

1 Node 프로젝트 초기화
2 Prisma + TypeScript 패키지 설치
3 TypeScript 설정
4 Prisma 초기화 (npx prisma init)
5 DB 연결 정보 설정 (.env)
6 모델 정의 (schema.prisma)
7 DB 반영 (prisma migrate dev)
8 PrismaClient로 DB 작업

🧠 실무 팁

  • prisma migrate dev는 개발 환경용, 운영 환경에는 prisma migrate deploy 사용
  • Prisma Client는 타입이 강력하여 오토 컴플리션이 잘 됩니다
  • 실시간 DB 변경 감지는 불가능하므로, migrate 또는 pull을 잘 사용해야 합니다

 

Prisma,PostgreSQL,TypeScript ORM,Node.js 백엔드,Prisma 시작하기,Prisma 설치법,Prisma Client,DB 마이그레이션,프론트엔드 백엔드 DB연동,Prisma PostgreSQL 연동

 

※ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함
반응형