Prisma는 Node.js 애플리케이션에서 강력한 데이터베이스 연동을 제공하는 도구입니다. Prisma를 사용하면 ORM(Object-Relational Mapping)을 통해 데이터베이스 스키마에 접근할 수 있고, JavaScript 또는 TypeScript로 쿼리를 작성할 수 있습니다.
이번 튜토리얼에서는 Prisma를 사용하여 데이터베이스를 연결하고 간단한 쿼리를 실행하는 방법을 살펴보겠습니다.
Prisma 설치
먼저, 프로젝트 디렉토리에서 Prisma CLI를 사용하여 Prisma를 설치합니다. 아래 명령어로 Prisma CLI를 설치합니다.
npm install @prisma/cli --save-dev
데이터 모델 정의
다음 단계는 데이터 모델을 정의하는 것입니다. schema.prisma
파일을 생성하고 데이터 모델을 정의합니다.
// schema.prisma
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
name String
email String @unique
}
위의 예시는 PostgreSQL 데이터베이스에 User
모델을 정의하는 예시입니다.
Prisma 클라이언트 생성
이제 Prisma 클라이언트를 생성하고 사용할 수 있도록 schema.prisma
파일을 기반으로 Prisma 클라이언트를 생성합니다.
npx prisma generate
위 명령어를 실행하면 Prisma 클라이언트가 자동으로 생성됩니다.
데이터베이스 연결 및 쿼리 실행
Prisma를 사용하여 데이터베이스에 연결하고 간단한 쿼리를 실행해보겠습니다.
// index.js
const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();
async function main() {
// 새로운 유저 생성
const newUser = await prisma.user.create({
data: {
name: 'John Doe',
email: 'john@example.com',
},
});
// 생성된 모든 유저 가져오기
const allUsers = await prisma.user.findMany();
console.log(allUsers);
// 특정 유저 가져오기
const user = await prisma.user.findUnique({
where: {
id: newUser.id,
},
});
console.log(user);
}
main()
.catch((e) => {
throw e;
})
.finally(async () => {
await prisma.$disconnect();
});
위의 예시 코드에서 PrismaClient
를 생성하고, user
모델을 사용하여 데이터를 생성하고 조회하는 방법을 보여줍니다.
이렇게 Prisma를 사용하여 데이터베이스 연동을 할 수 있습니다. Prisma는 탄력적이고 강력한 데이터베이스 연동 도구로, Node.js 애플리케이션에서 데이터베이스와의 상호작용을 쉽게 할 수 있도록 도와줍니다.
더 자세한 내용은 Prisma 공식 문서를 참조하세요.