Transaction Control Language (TCL) (Мова керування транзакціями) — це сімейство комп'ютерних мов, що використовуються в комп'ютерних програмах або користувачами баз даних для керування транзакціями.

Тепер найпопулярнішою мовою TCL є SQL, що використовується для отримання і маніпулювання даними в реляційній базі даних.

TCL у випадку з SQL включає в себе такі команди:

Begin - служить визначенням початку транзакції; Commit - застосовує транзакцію; Rollback - відкочує всі зміни, зроблені у контексті поточної транзакції; Savepoint - встановлює проміжну точку збереження усередині транзакції.

Приклад у PostgreSQL Для прикладу, у нас є таблиця Sells (shop ,sweet ,price) , яка містить інформацію про продажі. shopsweetpriceSolodkaMriyaNuts75SolodkaMriyaChervoniyMak 70BabusinySolodoshchiBounty120TsukerkiKorivka105TsukerkiNuts155

Далі виконаємо наступну транзакцію BEGIN; UPDATE     Sells SET shop = 'newShop' WHERE shop ='SolodkaMriya' ; UPDATE     Sells SET sweet = 'newSweet' WHERE shop ='newShop' ; SELECT * FROM Sells COMMIT;Результат виконання транзакції shopsweetpricenewShopnewSweet75newShopnewSweet 70BabusinySolodoshchiBounty120TsukerkiKorivka105TsukerkiNuts155 Тепер спробуємо зробити те саме, але додавши при цьому відкат транзакцій(Rollback) та точку збереження (Savepoint)BEGIN; UPDATE Sells SET shop = 'newShop' WHERE shop ='SolodkaMriya' ; SAVEPOINT my_savepoint; UPDATE Sells SET sweet = 'newSweet' WHERE shop ='newShop' ; SELECT * FROM Sells; ROLLBACK TO my_savepoint; COMMIT;Після цього давайте виконаємо наступну транзакцію для початкової таблиці. Транзакція відкотилась до точки збереження і в нас змінилась лише назва магазину shopsweetpricenewShopNuts75newShopChervoniyMak 70BabusinySolodoshchiBounty120TsukerkiKorivka105TsukerkiNuts155 Корисні Джерела

https://www.studytonight.com/dbms/tcl-command.php https://www.postgresqltutorial.com/postgresql-transaction/ https://www.geeksforgeeks.org/sql-ddl-dml-tcl-dcl/

Див. також

Data Definition Language Data Control Language