Sobes.tech
Junior — Middle

Van tapasztalata tranzakciók használatában a projektjeiben?

sobes.tech MI

Válasz az MI-től

Igen, Node.js projektekben tranzakciókat használtam, különösen adatbázisokkal, mint például PostgreSQL vagy MySQL. A tranzakciók lehetővé teszik több művelet egyetlen atomikus egységbe való összevonását, így vagy minden változtatás megtörténik, vagy egyik sem, ami fontos az adatok integritásának megőrzése érdekében.

Példa tranzakció használatára a pg könyvtárral PostgreSQL-hez:

const { Client } = require('pg');

async function performTransaction() {
  const client = new Client();
  await client.connect();
  try {
    await client.query('BEGIN');
    await client.query('INSERT INTO users(name) VALUES($1)', ['Alice']);
    await client.query('INSERT INTO accounts(user_id, balance) VALUES($1, $2)', [1, 100]);
    await client.query('COMMIT');
  } catch (e) {
    await client.query('ROLLBACK');
    throw e;
  } finally {
    await client.end();
  }
}

Ha valamelyik művelet nem sikerül, minden változtatás visszavonásra kerül.