8.1 Обработка транзакций
Транзакции могут использоваться для группировки операций в атомарную единицу. Либо все операции транзакции завершаются успешно при её подтверждении, либо ни одна. Возможна отмена транзакции, пока она не подтверждена.
Транзакции могут быть начаты в сессии с помощью метода startTransaction(), подтверждены с помощью commitTransaction() и отменены или откачены с помощью rollbackTransaction(). Это показано в следующем примере. Пример предполагает, что схема test существует, а коллекция my_collection не существует.
var mysqlx = require('mysqlx');
// Connect to server
var session = mysqlx.getSession( {
host: 'localhost', port: 33060,
user: 'user', password: 'password' } );
// Get the Schema test
var db = session.getSchema('test');
// Create a new collection
var myColl = db.createCollection('my_collection');
// Start a transaction
session.startTransaction();
try {
myColl.add({name: 'Rohit', age: 18, height: 1.76}).execute();
myColl.add({name: 'Misaki', age: 24, height: 1.65}).execute();
myColl.add({name: 'Leon', age: 39, height: 1.9}).execute();
// Commit the transaction if everything went well
session.commit();
print('Data inserted successfully.');
}
catch (err) {
// Rollback the transaction in case of an error
session.rollback();
// Printing the error message
print('Data could not be inserted: ' + err.message);
}
© 2025 Oracle
Licensed under the GPLv2 License.