Опрос

Что вас больше интересует?

  • игры для nokia
  • темы на телефон
  • программы на мобильный
  • обзоры мобильных телефонов


 

Какие игры вы предпочитаете?

  • игры для мальчиков
  • игры для девочек
  • драки
  • стрелялки
  • логические игры
  • спортивные


 

счетчики

Транзакции и управление их выполнением

Статьи

Транзакцией называется действие или набор действий, выполняемых как одна процедура с целью получения или обновления данных. После начала выполнения транзакции результаты ее действий кэшируются в памяти. Если хотя бы один из операторов, входящих в состав транзакции, выполнен с ошибкой, то отменяются все операторы этой транзакции - производится откат транзакции. Если же все операторы выполнены верно, результаты транзакции фиксируются — данные из кэша переносятся в БД.

Любая транзакция обязана соответствовать ряду требований:

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

• Согласованность. Транзакция должна переводить БД из одного согласованного состояния в другое. Однако в процессе выполнения транзакции допускается появление несогласованных промежуточных результатов. Говоря о согласованности результатов, мы имеем в виду, что в результате выполнения транзакции данные будут соответствовать заложенной в базе данных логике.

• Изолированность. Транзакции должны выполняться независимо одна от другой, и не одна из транзакций не должна быть допущена к промежуточным результатам другой транзакции.

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

ОВ составе транзакции категорически запрещается применять операторы, которые прямо или косвенно могут изменить структуру БД (таблиц, индексов, хранимых процедур, представлений, триггеров и т. п.) или повлиять на права пользователей. Кроме того, внутри транзакции нельзя выполнять другие транзакции.

Различают три основных типа транзакций: транзакции извлечения, транзакции обновления и транзакции смешанного типа. Транзакции извлечения применяются для выборки данных с целью их последующего отображения или печати. Транзакции обновления работают во время вставки, обновления или удаления записей из БД. Смешанные транзакции допускают проведение операций чтения и редактирования записей.

При проектировании многопользовательской БД настоящей головной болью разработчика может стать организация совместного доступа двух и более пользователей к одним и тем же данным. Совместная работа с ресурсом подразумевает решение двуединой задачи:

1. Организация разграничений между параллельно выполняющимися транзакциями.

2. Построение системы управления ресурсом.

Добавить комментарий


Защитный код
Обновить