Spec-Zone.ru › MySQL Connectors 1.0

8.1 Обработка транзакций

  • 8.1.1 Обработка предупреждений
  • 8.1.2 Обработка ошибок

Транзакции могут использоваться для группировки операций в атомарную единицу. Либо все операции транзакции завершаются успешно при её подтверждении, либо ни одна. Возможна отмена транзакции, пока она не подтверждена.

Транзакции могут быть начаты в сессии с помощью метода 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.
https://docs.oracle.com/cd/E17952_01/x-devapi-userguide-shell-js-en/transaction-handling.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API