Откатывайте данные в базе данных

В этом примере показано, как соединиться с базой данных, обновите существующую строку данных в базе данных и откатывайте обновление. Используйте execute функция, чтобы откатывать обновление после выполнения update функция.

Создайте соединение с базой данных conn к Microsoft® База данных Access™. Этот код принимает, что вы соединяетесь с источником данных под названием dbdemo с пустым именем пользователя и паролем.

conn = database('dbdemo','','');

Эта база данных содержит таблицу inventorytable это содержит эти столбцы:

  • productnumber

  • quantity

  • price

  • inventorydate

Установите AutoCommit свойство connection возразите против 'off'. Любые обновления, которые вы делаете после выключения этого флага, не соглашаются на базу данных автоматически.

conn.AutoCommit = 'off';

Задайте массив ячеек, содержащий имена столбцов, которые вы обновляете в inventorytable.

colnames = {'price','inventorydate'};

Задайте таблицу, которая содержит данные для вставки. Обновите цену к 15$ и установите метку времени материально-технических ресурсов на '2014-12-01 08:50:15.000'.

data = table(15,{'2014-12-01 08:50:15.000'}, ...
    'VariableNames',{'price','inventorydate'});

Обновите столбцы price и inventorydate в таблице inventorytable поскольку номер продуктов равняется 1.

tablename = 'inventorytable';
whereclause = 'WHERE productnumber = 1';

update(conn,tablename,colnames,data,whereclause)

Откатывайте данные для обновления.

sqlquery = 'ROLLBACK';
execute(conn,sqlquery)

Можно передать данные базе данных, заменив ROLLBACK SQL-оператор с COMMIT. Можно также откатывать или фиксировать данные после выполнения INSERT SQL-оператор с помощью sqlwrite функция.

Закройте соединение с базой данных.

close(conn)

Смотрите также

| |

Похожие темы