Home Prisma 쿼리 메서드
Post
X

Prisma 쿼리 메서드

Prisma에서 쿼리 메서드를 사용해보자.

Prisma에서 제공하는 기본 CRUD 쿼리 메서드는 데이터베이스와 상호작용할 때 가장 많이 사용되는 메서드들입니다.

메서드를 사용하여 데이터를 생성(CREATE), 조회(READ), 수정(UPDATE), 삭제(DELETE)할 수 있습니다.


create

새로운 레코드를 데이터베이스에 생성할 때 사용됩니다.

data 객체를 통해 새로운 레코드를 정의하고 이를 생성합니다.

1
2
3
4
5
6
const user = await prisma.user.create({
  data: {
    name: "Alice",
    email: "alice@example.com",
  },
});

findUnique

단일 레코드를 고유한 값(주로 id나 유니크 필드)을 기준으로 조회할 때 사용됩니다.

where 조건을 통해 고유한 값으로 하나의 레코드를 찾아옵니다.

1
2
3
4
5
const user = await prisma.user.findUnique({
  where: {
    id: 1, // 유니크한 조건으로 조회
  },
});

findFirst

조건에 맞는 첫 번째 레코드를 조회하는 메서드입니다.

1
2
3
4
5
const user = await prisma.user.findFirst({
  where: {
    name: "Alice", // 이름이 'Alice'인 첫 번째 사용자 조회
  },
});

findMany

여러 레코드를 조회할 때 사용됩니다.

1
2
3
4
5
6
7
8
9
const users = await prisma.user.findMany({
  where: {
    active: true, // 'active' 상태인 사용자만 조회
  },
  orderBy: {
    name: "asc", // 이름 기준으로 오름차순 정렬
  },
  take: 10, // 최대 10개 사용자만 조회
});

update

기존 레코드를 수정할 때 사용됩니다.

where 조건으로 업데이트할 레코드를 찾고, data 객체를 통해 수정할 필드를 설정합니다.

1
2
3
4
5
6
7
8
const updatedPost = await prisma.post.update({
  where: {
    id: 1, // 포스트 ID로 조회
  },
  data: {
    title: "Updated title", // 제목 업데이트
  },
});

updateMany

여러 레코드를 한 번에 수정할 때 사용됩니다.

1
2
3
4
5
6
7
8
const updatedUsers = await prisma.user.updateMany({
  where: {
    age: { gte: 18 }, // 나이가 18세 이상인 사용자들
  },
  data: {
    status: "verified", // 'verified' 상태로 업데이트
  },
});

delete

단일 레코드를 삭제할 때 사용됩니다.

1
2
3
4
5
const deletedUser = await prisma.user.delete({
  where: {
    id: 1, // 삭제할 사용자 ID
  },
});

deleteMany

여러 레코드를 한 번에 삭제할 때 사용됩니다.

조건에 맞는 모든 레코드를 삭제할 수 있습니다.

1
2
3
4
5
const deletedPosts = await prisma.post.deleteMany({
  where: {
    createdAt: { lt: new Date("2023-01-01") }, // 2023년 1월 1일 이전에 작성된 포스트 삭제
  },
});
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.