Sobes.tech
Junior — Middle

Жобаларыңызда транзакцияларды колдонуу боюнча тажрыйбаңыз барбы?

sobes.tech AI

AIден жооп

Ооба, Node.js долбоорлорунда мен транзакцияларды колдонгом, өзгөчө PostgreSQL же MySQL сыяктуу маалымат базалар менен иштегенде. Транзакциялар бир нече операцияны бир атомдук бирдикке бириктирүүгө мүмкүндүк берет, ошондуктан бардык өзгөртүүлөр колдонулат же эч бири эмес, бул маалыматтардын бүтүндүгүн сактоо үчүн маанилүү.

Мисал катары pg китепканасы менен 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();
  }
}

Эгер бир операция ийгиликсиз болсо, бардык өзгөртүүлөр кайтарылат.