Sobes.tech
Junior — Middle

Heeft u ervaring met het gebruik van transacties in uw projecten?

sobes.tech AI

Antwoord van AI

Ja, in Node.js-projecten heb ik transacties gebruikt, vooral bij het werken met databases zoals PostgreSQL of MySQL. Transacties maken het mogelijk om meerdere operaties te combineren tot één atomair geheel, zodat of alle wijzigingen worden doorgevoerd of geen enkele, wat belangrijk is voor het behoud van gegevensintegriteit.

Voorbeeld van het gebruik van een transactie met de pg-bibliotheek voor PostgreSQL:

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();
  }
}

Als een operatie niet slaagt, worden alle wijzigingen teruggedraaid.