Фиксация и откат SQL
Наиболее важным аспектом базы данных является способность хранить данные и возможность манипулировать данными. COMMIT и ROLLBACK – это два таких ключевых слова, которые используются для сохранения и отмены процесса хранения данных. Эти ключевые слова обычно используются в контексте транзакции. Давайте попробуем разобраться в деталях COMMIT и ROLLBACK.
Фиксация и откат SQL
COMMIT и ROLLBACK выполняются для транзакций. Транзакция — это наименьшая единица работы, выполняемая над базой данных. Это последовательность инструкций в логическом порядке. Транзакция может быть выполнена вручную программистом или может быть запущена с помощью автоматизированной программы.
SQL-коммит
COMMIT — это команда SQL, которая используется для сохранения изменений, выполненных транзакцией. Когда выдается команда COMMIT, она сохраняет все изменения с момента последней COMMIT или ROLLBACK.
Синтаксис для фиксации SQL
COMMIT;
Синтаксис фиксации включает только одно ключевое слово COMMIT.
Пример фиксации SQL
Давайте рассмотрим следующую таблицу, чтобы лучше понять Commit. Клиент:-
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
4 | John | Texas | USA |
Теперь давайте удалим одну строку из приведенной выше таблицы, где штат — «Техас».
DELETE from Customer where State = 'Texas';
Опубликуйте команду DELETE, если мы не будем публиковать COMMIT, и если сеанс будет закрыт, то изменение, сделанное благодаря команде DELETE, будет потеряно. Обновленная команда с COMMIT
DELETE from Customer where State = 'Texas';
COMMIT;
Использование вышеупомянутой последовательности команд гарантирует, что команда DELETE после изменения будет успешно сохранена.
Вывод после фиксации
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
Откат SQL
ROLLBACK — это команда SQL, которая используется для отмены изменений, выполненных транзакцией. Когда выдается команда ROLLBACK, она отменяет все изменения с момента последнего COMMIT или ROLLBACK.
Синтаксис отката SQL
ROLLBACK;
Синтаксис отката включает всего одно ключевое слово ROLLBACK.
Пример отката SQL
Давайте рассмотрим следующую таблицу, чтобы лучше понять откат. Клиент:-
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
4 | John | Texas | USA |
Теперь давайте удалим одну строку из приведенной выше таблицы, где штат — «Техас».
DELETE from Customer where State = 'Texas';
Опубликуйте команду DELETE, если мы опубликуем ROLLBACK, это вернет изменение, выполненное из-за команды удаления. Обновленная команда с ROLLBACK
DELETE from Customer where State = 'Texas';
ROLLBACK;
Использование вышеупомянутой последовательности команд гарантирует, что команда изменения после DELETE будет успешно отменена.
Вывод после отката
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
4 | John | Texas | USA |