Разработка и сопровождение баз данных в среде СУБД MS SQL Server 2000. Сивохин А.В - 87 стр.

UptoLike

режиме неявного начала транзакции, когда начала транзакции не
указывается, а ее завершение задается явно командой COMMIT или
инициируется командами: ALTER TABLE, CREATE, DELETE, DROP,
FETCH, GRANT, INSERT, OPEN, REVOKE, SELECT, TRANCATE TABLE и
UPDATE; в этом режиме можно использовать команды COMMIT и
ROLLBACK; после завершения текущей транзакции, начинается
выполнение следующей, если не был задан откат транзакции.
Режим автоматического начала транзакций устанавливается по умолчанию
или
командой SET IMPLICIT – TRANSACTION OFF.
Режим неявного (или подразумевающегося) начала транзакций задается только
командой SET IMPLICIT – TRANSACTION ON.
Когда в запросах используются разные базы данных, даже если они
расположены на одном физическом сервере, необходимо использовать
распределенные транзакции, которые на самом деле представляют собой несколько
отдельных транзакций, выполняемых локально в каждой базе данных, используемой
в запросе. Если при этом
одна из локальных транзакций не выполняется, то
происходит откат распределенной транзакции.
Для управления распределенными транзакциями в MS SQL Server 2000
используется координатор DTC (Distribution Transaction Coordinator). Координатор
MS DTC начинает и заканчивает локальные транзакции, а также откатывает их
назад, если одна из них закончилась с ошибкой. При выполнении распределенных
транзакций пользователь может обращаться не только к серверам SQL Server 2000,
но и к
другим источникам данных: Oracle, Access, источники ODBC и другие.
Для клиентского приложения работа с определенными транзакциями
практически ничем не отличается от работы с локальными транзакциями, так как
все согласование транзакций в различных источниках данных выполняется
автоматически и невидимо для пользователя.
Распределенная транзакция может быть начата несколькими способами. Если
приложение в локальной транзакции использует распределенный
запрос, то сервер
автоматически начинает выполнение распределенной транзакции.
    • режиме неявного начала транзакции, когда начала транзакции не
       указывается, а ее завершение задается явно командой COMMIT или
       инициируется командами: ALTER TABLE, CREATE, DELETE, DROP,
       FETCH, GRANT, INSERT, OPEN, REVOKE, SELECT, TRANCATE TABLE и
       UPDATE; в этом режиме можно использовать команды COMMIT и
       ROLLBACK;      после    завершения     текущей    транзакции,    начинается
       выполнение следующей, если не был задан откат транзакции.
    Режим автоматического начала транзакций устанавливается по умолчанию
или командой SET IMPLICIT – TRANSACTION OFF.
    Режим неявного (или подразумевающегося) начала транзакций задается только
командой   SET IMPLICIT – TRANSACTION ON.
    Когда в запросах используются разные базы данных, даже если они
расположены    на   одном     физическом     сервере,   необходимо     использовать
распределенные транзакции, которые на самом деле представляют собой несколько
отдельных транзакций, выполняемых локально в каждой базе данных, используемой
в запросе. Если при этом одна из локальных транзакций не выполняется, то
происходит откат распределенной транзакции.
    Для управления распределенными транзакциями в MS SQL Server 2000
используется координатор DTC (Distribution Transaction Coordinator). Координатор
MS DTC начинает и заканчивает локальные транзакции, а также откатывает их
назад, если одна из них закончилась с ошибкой. При выполнении распределенных
транзакций пользователь может обращаться не только к серверам SQL Server 2000,
но и к другим источникам данных: Oracle, Access, источники ODBC и другие.
    Для клиентского приложения работа с определенными транзакциями
практически ничем не отличается от работы с локальными транзакциями, так как
все согласование транзакций в различных источниках данных выполняется
автоматически и невидимо для пользователя.
    Распределенная транзакция может быть начата несколькими способами. Если
приложение в локальной транзакции использует распределенный запрос, то сервер
автоматически начинает выполнение распределенной транзакции.