일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- SSR
- js
- 리액트
- sever action
- dynamic pages
- render phase
- iron-session
- @tailwind utility
- revalidatepath
- commit phase
- 자바스크립트
- @tailwind base
- 프로그래머스
- supabase realtime
- client components
- revalidatetag
- sever components
- @tailwind
- CSS
- @tailwind components
- static pages
- unstable_nostore
- 클로저
- createbrowserrouter
- RECOIL
- image component
- 3진법 뒤집기
- server components
- 타입스크립트
- interceptor routes
Archives
- Today
- Total
개발하는 너구리
prisma 본문
Prisma는 TypeScript와 JavaScript 환경에서 사용되는 최신 ORM(Object-Relational Mapping) 도구입니다. 데이터베이스와 애플리케이션 간의 상호작용을 단순화하고 타입 안전성을 제공하며, 개발자가 데이터베이스 작업을 보다 쉽게 수행할 수 있도록 도와줍니다.
주요 기능 및 특징
- 자동 생성된 타입:
- Prisma는 데이터베이스 스키마를 기반으로 TypeScript 타입을 자동으로 생성하여, 데이터베이스 작업에서 타입 안전성을 보장합니다.
- 데이터베이스 마이그레이션:
- Prisma는 마이그레이션 시스템을 제공하여, 데이터베이스 스키마의 변경 사항을 관리하고 적용할 수 있습니다.
- 프로그래밍 인터페이스:
- Prisma Client를 통해 데이터베이스 쿼리를 TypeScript 또는 JavaScript 코드로 작성할 수 있습니다.
- Prisma Client는 자동으로 생성된 타입을 활용하여, 개발자가 쿼리를 작성할 때 코드 컴플리션 및 타입 검사를 받을 수 있습니다.
- 다양한 데이터베이스 지원:
- Prisma는 여러 데이터베이스를 지원합니다. (예: PostgreSQL, MySQL, SQLite, SQL Server 등)
주요 구성 요소
Prisma Schema:
- .prisma 파일에 정의되며, 데이터베이스 모델, 데이터베이스 연결 정보, 생성할 Prisma Client를 설정합니다.
- 예시:
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
}
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
}
Prisma Client:
- Prisma Schema로부터 생성된 타입 안전한 데이터베이스 클라이언트입니다.
- 예시:
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient();
async function main() {
const user = await prisma.user.create({
data: {
email: 'user@example.com',
name: 'John Doe',
},
});
console.log(user);
}
main()
.catch(e => console.error(e))
.finally(async () => {
await prisma.$disconnect();
});
Prisma Migrate:
- 데이터베이스 스키마를 버전 관리하고, 변경 사항을 적용하는 도구입니다.
- 주요 명령어:
- prisma migrate dev: 로컬 개발 환경에서 마이그레이션을 적용합니다.
- prisma migrate deploy: 프로덕션 환경에서 마이그레이션을 적용합니다.
- prisma migrate reset: 데이터베이스를 리셋하고 마이그레이션을 다시 적용합니다.
요약
Prisma는 현대적인 ORM 도구로, 데이터베이스와의 상호작용을 간단하게 하고, 타입 안전성을 제공하며, 데이터베이스 마이그레이션 시스템을 통해 개발자가 더 효율적으로 작업할 수 있도록 도와줍니다. Prisma를 사용하면 데이터베이스 작업이 더욱 직관적이고, 안전하며, 유지보수가 쉬워집니다.
'TIL' 카테고리의 다른 글
sever action (0) | 2024.07.04 |
---|---|
bcrypt, iron-session (0) | 2024.07.02 |
zod (0) | 2024.06.28 |
@tailwind (0) | 2024.06.27 |
tailwind css modifier (0) | 2024.06.26 |