русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Средства обработки транзакций


Дата добавления: 2015-07-09; просмотров: 724; Нарушение авторских прав


Транзакция начинается каждый всякий раз, когда происходит сеанс работы с SQL. Все команды, которые вводятся будут частью этой транзакции, пока она не завершится вводом команды COOMMIT WORKили командыROLLBACK WORK. COMMIT делает все изменения, произведенные транзакцией, постоянными, а ROLLBACK может их отменить. Новая транзакция начинается после каждой команды COMMIT или ROLLBACK. Синтаксис данных команд:

 

Чтобы оставить все изменения постоянными используют команду

 

COMMIT WORK;

Чтобы отменить изменения используют команду

 

ROLLBACK WORK;

Так же можно установить автоматическое запоминание выполненных команд, причем если определенные действия приведут к ошибке, то они будут автоматически отменены. Автоматического режима устанавливается командой

 

SET AUTOCOMMIT ON;

Отмена автоматического режима

SET AUTOCOMMIT OFF;

При режиме AUTOCOMMITкаждая команда становится отдельной транзакцией.

 

В стандарте ANSI/ISO определена модель трансакций таким образом, что указаны задачи операторов COMMITи ROLLBACK. Согласно стандарту считается, что транзакция автоматически начинается с выполнения пользователем или программой первого оператора SQL. Далее происходит последовательное выполнение остальных операторов SQL до тех пор, пока транзакция не завершится одним из четырех способов:

 

§ Команда COMMITзавершает выполнение ткущей транзакции, причем изменения, внесенные в БД, становятся постоянными. Новая транзакция начинается непосредственно после COMMIT;

§ Команда ROLLBACKотменяет выполнение текущейтранзакции,сделанные изменения отменяются,а новая транзакция начинается непосредственно послеROLLBACK;

§ Успешное завершение программы обработки данных считается успешным окончанием транзакции, как если бы была выполнена команда COMMIT. Новая транзакция не начинается, т.к. программа закончилась;



§ Неуспешное завершение программы считается неуспешным окончанием транзакции, как ели бы была выполнена команда ROLLBACK. Новая транзакция не начинается, поскольку программа закончилась.

 

В СУБД SQL Server используется несколько расширенная модель транзакций, представляющая пользователям дополнительные возможности. При этом используются команды:

 

§ BEGIN TRANSACTION – сообщает системе о начале транзакции. В отличие от стандартной модели, начало транзакции задается явно с помощью этой команды.

§ COMMIT TRANSACTION – сообщает системе об успешном окончании транзакции. После выполнения этой команды все изменения, сделанные в БД в течении транзакции, становятся постоянными. Однако новая транзакция не начинается;

§ SAVE TRANSACTION – создает внутри транзакции точку сохранения. СУБД сохраняет состояние БД в текущей точке и присваивает сохраненному состоянию имя точки сохранения, которое указывается в операторе;

§ ROLLBACK TO SAVEPOINT – отменяет изменения, сделанные в БД после точки сохранения, возвращая транзакцию к месту, где был выполнен оператор SAVE TRANSACTION;

§ ROLLBACK – отменяет все изменения, созданные в БД после оператораBEGIN TRANSACTION.

Все транзакции сохраняются в журнале транзакций, при необходимости системный администратор имеет возможность восстановить данные по этому журналу. Недостатком использования журнала транзакции является увеличение продолжительности выполнения изменений в БД.

 



<== предыдущая лекция | следующая лекция ==>
Контроль целостности данных с использованием триггеров | Методы блокировки


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.01 сек.