8. CRUD операции
CRUD (Create, Read, Update, Delete) — базовые операции для работы с данными. Prisma предоставляет интуитивный API для всех этих операций с полной типобезопасностью.
Create — создание записей
Заголовок раздела «Create — создание записей»// Создать одну записьconst user = await prisma.user.create({ data: { name: 'Иван', },})
// Создать несколько записей за разawait prisma.user.createMany({ data: [ ],})Read — чтение записей
Заголовок раздела «Read — чтение записей»// Найти одну запись (возвращает null если не найдено)const user = await prisma.user.findUnique({ where: { id: 1 } })
// Найти первую подходящую записьconst user = await prisma.user.findFirst({ where: { role: 'ADMIN' } })
// Найти все записи с условиемconst users = await prisma.user.findMany({ where: { isActive: true } })Update — обновление записей
Заголовок раздела «Update — обновление записей»// Обновить одну записьconst updated = await prisma.user.update({ where: { id: 1 }, data: { name: 'Новое имя' },})
// Обновить несколько записейawait prisma.user.updateMany({ where: { role: 'USER' }, data: { isActive: true },})Delete — удаление записей
Заголовок раздела «Delete — удаление записей»// Удалить одну записьawait prisma.user.delete({ where: { id: 1 } })
// Удалить несколько записейawait prisma.user.deleteMany({ where: { isActive: false } })Upsert — создание или обновление
Заголовок раздела «Upsert — создание или обновление»upsert — это атомарная операция: если запись существует, она обновляется; если нет — создаётся:
const user = await prisma.user.upsert({ update: { name: 'Иван Обновлённый' },})