С pg: const client = await pool.connect(); try { await client.query("BEGIN"); await client.query("INSERT INTO orders...", [...]); await client.query("UPDATE inventory...", [...]); await client.query("COMMIT"); } catch (e) { await client.query("ROLLBACK"); throw e; } finally { client.release() }. Важно: всегда release() в finally, иначе утечка соединений. С Prisma: prisma.$transaction(async tx => {}). С TypeORM: queryRunner.startTransaction(). Транзакции гарантируют атомарность.
Как реализовать транзакции в Node.js с PostgreSQL?
Middle
321 просмотровAFK Offer AI
Что такое type narrowing в TypeScript?