Поделиться через


Управление транзакциями

Приложения управляют транзакциями, указывая время их начала и завершения. Возможны следующие способы управления транзакциями.

  • Инструкции SQL в рамках среды Visual Studio.

  • API-функции для работы с базами данных через ADO.NET и OLE DB.

Внимание   Управлять транзакцией можно только с помощью одного из интерфейсов API. Использование двух интерфейсов API для одной транзакции может привести к неопределенным результатам.

Приложение должно правильно обрабатывать ошибки, которые возникают в случае прерывания транзакции до ее завершения.

Использование инструкций SQL

Запускать и завершать транзакции следует с помощью инструкций SQL.

Запуск транзакций

Транзакции в компоненте Microsoft SQL Server Compact Database Engine могут запускаться в явном режиме или в режиме автоматической фиксации.

  • Явные транзакции

    Запустите явную транзакцию, указав инструкцию BEGIN TRANSACTION.

  • Автоматические транзакции

    Стандартный режим для SQL Server Compact. Автоматическая транзакция запускается при запуске инструкции операции, а заканчивается по завершении инструкции.

Завершение транзакций

Завершать транзакции можно с помощью инструкции COMMIT или ROLLBACK.

  • COMMIT

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

  • ROLLBACK

    В случае возникновения ошибок в транзакции или ее отмены пользователем инструкция ROLLBACK откатывает транзакцию. Инструкция ROLLBACK отменяет все изменения, внесенные в транзакцию, возвращая данные в состояние, в котором они находились до начала транзакции. Кроме того, инструкция ROLLBACK высвобождает ресурсы, удерживаемые транзакцией.

Использование интерфейсов API

Интерфейсы API для баз данных, такие как OLE DB и ADO.NET, содержат функции или методы, используемые для выделения транзакций. Это основные механизмы, используемые для управлениями транзакциями в приложении SQL Server Compact. Дополнительные сведения см. в разделах Справочник по собственному программированию (SQL Server Compact) и Как использовать транзакции с OLE DB (программным путем).

См. также

Основные понятия

Транзакции (SQL Server Compact)

Другие ресурсы

Справочник по SQL (SQL Server Compact)