MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

dukungan transaksi mongodb 4.0 untuk node.js

Seperti yang disebutkan di komentar juga, Anda dapat menemukan referensi untuk transaksi di node-mongodb-native v3.1 API ClientSession . Ini karena transaksi terkait dengan sesi. Artinya, Anda memulai transaksi untuk satu sesi. Pada waktu tertentu, Anda dapat memiliki paling banyak satu transaksi terbuka untuk satu sesi.

Dokumentasi untuk Transaksi multi-dokumen MongoDB juga berisi contoh Node.js potongan kode. Misalnya:

  session.startTransaction({
    readConcern: { level: 'snapshot' },
    writeConcern: { w: 'majority' }
  });

  const employeesCollection = client.db('hr').collection('employees');
  const eventsCollection = client.db('reporting').collection('events');

  await employeesCollection.updateOne(
    { employee: 3 },
    { $set: { status: 'Inactive' } },
    { session }
  );
  await eventsCollection.insertOne(
    {
      employee: 3,
      status: { new: 'Inactive', old: 'Active' }
    },
    { session }
  );

  try {
    await commitWithRetry(session);
  } catch (error) {
    await session.abortTransaction();
    throw error;
  }

Referensi untuk metode di atas dapat ditemukan di:

Selain driver MongoDB Node.js v3.1, harap perhatikan bahwa transaksi multi-dokumen tersedia untuk set replika hanya di MongoDB v4.0.x. Transaksi untuk sharded cluster tersedia mulai dari versi v4.2.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB - hapus karakter non numerik di bidang

  2. MongoDB - Jatuhkan Koleksi

  3. Koleksi sharding MongoDB tidak menyeimbangkan kembali

  4. Cara Menginstal MongoDB

  5. find() dan findOne() metode di MongoDB menunjukkan hasil yang berbeda