Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Лабораторна робота №9
Мета: Набути навичок по використанню транзакцій при роботі з СУБД.
Завдання:
Розпочати транзакцію. Зробити зміни в кількох рядках таблиці (чи кількох таблиць). Зєднатися з базою даних за допомогою іншого клієнта і перевірити вміст тих рядків, в яких робилися зміни. Підтвердити транзакцію. Порівняти вміст рядків, де проводилась модифікація за допомогою обидвох клієнтів.
Хід роботи:
В якості бази даних для виконання транзакції використовую базу даних створену в попередні роботі в якій присутні 4 таблиці які звязані за допомогою зовнішнього ключа між собою способом один до одного і багато одного.
Для демонстрації роботи транзакції використовую Heidi SQL. Для того щоб розпочати транзакцію використовую команду START TRANSACTION; Після чого додаю відповідні команди для зміни даних в таблиці рисунок 1.
Рисунок 1 - Створення запиту транзакції
Після виконаного запиту видалення у вікні відображення даних таблиці ми побачимо тільки один рядок інший видалений рисунок 2.
Рисунок 2 Видалення запису
Для того щоб перевірити що дані не знищені і транзакція незавершена входимо із іншої сесії для перегляду тої самої бази даних.
Рисунок 3 База даних із іншої сесії
Ми можемо побачити що дані не змінені і присутні всі рядки таблиці. Для того щоб підтвердити транзакцію скористаємось командою COMMIT; І тепер обновлюємо таблицю із сесії 2. Ми можемо побачити що Транзакція виконалась рисунок 4.
Рисунок 4 Результати виконання тразакції
Також ще існує команда ROLLBACK; яка здійснює відкат тобто відміняє всі пророблені дії із таблицею.
Додамо новий радок в таблицю рисунок 5.
Рисунок 5 додавання запису в табл..
Після чого виконуємо ROLLBACK; що прихводить до відкату команд які були виконання і таким чином 2 рядок який ми добавили буде видалений із таблиці.
Висновок: При виконанні лабораторної роботи я набув навичок по використанню транзакцій при роботі з СУБД.