Файл: Лабораторная работа добавление, изменение, удаление данных. Базы данных.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 26.10.2023

Просмотров: 23

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Министерство образования и науки РФ

Санкт-Петербургский политехнический университет

Петра Великого

Институт компьютерных наук и технологий

Высшая школа киберфизических систем и управления

УТВЕРЖДАЮ

___________________________

___________________________

___________________________

«____» _____________ _____ г.

Лабораторная работа

ДОБАВЛЕНИЕ, ИЗМЕНЕНИЕ, УДАЛЕНИЕ ДАННЫХ. «Базы данных»


Выполнил:

студент гр. з3532703/00101 ________________Д. Ю. Глушенков

подпись, дата
Проверил

канд. экон. наук, доцент ________________С.А. Нестеров

подпись, дата
Санкт-Петербург

2023 г.

Постановка задачи

В данной лабораторной мы научимся использовать команды ДОБАВЛЕНИЕ, ИЗМЕНЕНИЕ, УДАЛЕНИЕ ДАННЫХ.

Ход работы

Добавим при помощи команды INSERT новую запись (рис. 1)



Рис. 1 пример использования команды INSERT

Пишем запрос, добавляющий новый статус «устарела» в таблицу BookStatus (рис. 2).



Рис. 2 запись нового статуса

Смотрим имеющиеся данные в таблицах Book и BookStatus, а также пишем и выполняем скрипт, вносящий 3-5 строк в таблицу BookInLib (рис. 3).



Рис. 3

Создаем временную таблицу #Book и вносим в нее записи из таблицы Book о книгах, выпущенных после 2000 года (рис. 4).



Рис. 4

Пишем два запроса, первый из которых увеличивает год издания всех книг в таблице #Book на 2, а второй изменяет в таблице #BookStatus название статуса c «устарела» на «обветшала» (рис. 5).




Рис. 5

Пишем запрос, удаляющий статус «обветшала» из таблицы #BookStatus (рис. 6).



Рис. 6

Пробуем удалить записи из таблицы Book (рис. 7).



Рис. 7

Как показала практика, мы не можем удалить записи, для которых есть связанные с ним в таблице BookInLib, а так как в SQL Server операция удаления выполняется как неявная транзакция, а транзакция неделима, т.е. выполняется целиком или не выполняется вообще, то операция удаления будет целиком отменена.

При попытке удалить записи из #Book проблем не возникло, всё из-за того, что она не имеет внешних связей с другими таблицами.