В этом примере показано, как соединиться с базой данных, обновить существующую строку данных в базе данных и откатить обновление. Используйте execute функцию для отката обновления после выполнения update функция.
Создайте соединение с базой данных conn в корпорацию Майкрософт® 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)