Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Транзакция состоит из одной команды или группы команд, которые выполняются в виде пакета. Транзакции позволяют объединять несколько операций в одну единицу работы. Если сбой происходит в одной точке транзакции, все обновления можно откатить до состояния предварительной транзакции.
Транзакция должна соответствовать свойствам ACID — атомарности, согласованности, изоляции и устойчивости, чтобы гарантировать согласованность данных. Большинство реляционных систем баз данных, таких как Microsoft SQL Server, поддерживают транзакции, предоставляя средства блокировки, ведения журнала и управления транзакциями всякий раз, когда клиентское приложение выполняет операцию обновления, вставки или удаления.
Замечание
Транзакции, связанные с несколькими ресурсами, могут снизить одновременность, если блокировки удерживаются слишком долго. Таким образом, сохраняйте транзакции как можно короче.
Если транзакция включает несколько таблиц в одной базе данных или сервере, то явные транзакции в хранимых процедурах часто выполняются лучше. Транзакции можно создавать в хранимых процедурах SQL Server с помощью Transact-SQL BEGIN TRANSACTIONи COMMIT TRANSACTIONROLLBACK TRANSACTION инструкций.
Для транзакций, связанных с различными диспетчерами ресурсов, например транзакцией между SQL Server и Oracle, требуется распределенная транзакция.
В этом разделе
Локальные транзакции
Демонстрирует, как выполнять транзакции с базой данных.
Распределенные транзакции
Описывает, как выполнять распределенные транзакции в ADO.NET.
Интеграция System.Transactions с SQL Server
System.Transactions Описывает интеграцию с SQL Server для работы с распределенными транзакциями.
Оптимистическая конкурентность
Описывает оптимистичную и пессимистичную согласованность и способы проверки нарушений согласованности.