Sobes.tech
Junior — Middle

Van tapasztalata adatbázisok vagy rendszerek tranzakcióinak kezelésében?

sobes.tech MI

Válasz az MI-től

Igen, a tranzakciók kezelése fontos része az adatbázisokkal való munkának, különösen az adatok integritásának biztosítása érdekében.

Node.js-ben általában könyvtárakat használnak az adatbázisokkal való munkához, például Sequelize, TypeORM vagy közvetlenül driverek (például PostgreSQL esetén).

Példa tranzakciókezelésre async/await és a Sequelize könyvtár használatával:

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

Ebben az esetben minden művelet sikeresen végrehajtódik együtt, vagy hiba esetén visszavonásra kerül, ez megakadályozva a részleges adatfrissítéseket.