Автофиксация
В контексте управления данными автофиксация — это режим работы соединения с базой данных . Каждое отдельное взаимодействие с базой данных (т. е. каждый оператор SQL ), передаваемое через соединение с базой данных в режиме автоматической фиксации, будет выполняться в отдельной транзакции , которая фиксируется неявно. Оператор SQL , выполненный в режиме автофиксации, не может быть отменен .
для каждого оператора Режим автоматической фиксации требует дополнительных затрат на транзакцию и часто может привести к нежелательному снижению производительности или использованию ресурсов базы данных. Тем не менее, в таких системах, как Microsoft SQL Server, а также в таких технологиях подключения, как ODBC и Microsoft OLE DB, режим автофиксации используется по умолчанию для всех операторов, изменяющих данные, чтобы гарантировать, что отдельные операторы будут соответствовать ACID ( атомарность) . согласованность-изоляция-долговечность) свойства транзакций. [1]
Альтернатива режиму автоматической фиксации (без автоматической фиксации) означает, что приложение SQL клиентское само отвечает за завершение транзакций явным образом с помощью команд SQL фиксации или отката . [2] [3] Режим без автоматической фиксации позволяет группировать несколько команд SQL для обработки данных в одну атомарную транзакцию.
Некоторые СУБД (например, MariaDB [4] ) принудительно выполнять автофиксацию для каждого оператора DDL , даже в режиме без автофиксации. В этом случае перед каждым оператором DDL DML автоматически фиксируются предыдущие операторы в транзакции. Каждый оператор DDL выполняется в отдельной новой транзакции автофиксации.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Автоподтверждение транзакций. https://technet.microsoft.com/en-us/library/aa213069(v=sql.80).aspx
- ^ «MySQL :: Справочное руководство MySQL 8.0 :: 15.7.2.2 автофиксация, фиксация и откат» .
- ^ Клайн, Кевин; Кляйн, Дэниел; Хант, Брэнд (2008). SQL в двух словах . Германия: О'Рейли Медиа. п. 411 . Проверено 20 февраля 2024 г.
- ^ «Операторы SQL — Транзакции — НАЧАТЬ ТРАНЗАКЦИЮ» . Документация по серверу MariaDB .