Sobes.tech
Junior — Middle

Máte skúsenosti s riadením transakcií v databázach alebo systémoch?

sobes.tech AI

Odpoveď od AI

Áno, správa transakcií je dôležitou súčasťou práce s databázami, najmä na zabezpečenie integrity dát.

V Node.js sa zvyčajne používajú knižnice ako Sequelize, TypeORM alebo priamo ovládače (napríklad pre PostgreSQL).

Príklad správy transakcie s použitím async/await a knižnice Sequelize:

const { sequelize } = require('./models');

async function performTransaction() {
  const t = await sequelize.transaction();
  try {
    await User.create({ name: 'John' }, { transaction: t });
    await Order.create({ userId: 1, total: 100 }, { transaction: t });
    await t.commit();
  } catch (error) {
    await t.rollback();
    throw error;
  }
}

Tu sa všetky operácie v rámci transakcie vykonajú úspešne spoločne, alebo v prípade chyby sú vrátené späť, čím sa zabraňuje čiastočným aktualizáciám dát.