Методы клиента¶
$disconnect
— закрывает соединение с БД, которое было установлено после вызова метода $connect
(данный метод чаще всего не требуется вызывать явно), и останавливает движок запросов (query engine) Prisma
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient();
async function seedDb() {
try {
await prisma.model.create(data);
} catch (e) {
onError(e);
} finally {
// !
await prisma.$disconnect();
}
}
$use
— добавляет посредника (middleware
)
prisma.$use(async (params, next) => {
console.log('Это посредник');
// работаем с `params`
return next(params);
});
next
— представляет "следующий уровень" в стеке посредников. Таким уровнем может быть следующий посредник или движок запросов Prisma;
params
— объект со следующими свойствами:
action
— тип запроса, например,create
илиfindMany
;args
— аргументы, переданные в запрос, например,where
илиdata
;model
— модель, например,User
илиPost
;runInTransaction
— возвращаетtrue
, если запрос был запущен в контексте транзакции;
методы $queryRaw
, $executeRaw
и $runCommandRaw
предназначены для работы с SQL. Почитать о них можно здесь;
$transaction
— выполняет запросы в контексте транзакции.
Подробнее о клиенте можно почитать здесь.