ВУЗ:
Составители:
Рубрика:
51
11. Получить значения P# для деталей, поставляемых для любого проекта по-
ставщиком, находящимся в том же городе.
12. Получить значения J# для проектов, в которые не поставляется ни одной
красной детали поставщиком из Лондона.
13. Получить значения S# для поставщиков, которые поставляют одну и ту
же деталь для всех проектов.
14. Получить значения J# для проектов, снабжаемых полностью поставщи-
ком S2.
15. Получить значения номеров тех деталей (P#), которые поставляются для
всех проектов в Лондоне.
16. Получить значения J# для проектов, снабжаемых, по крайней мере, всеми
деталями, которые поставляются поставщиком S2.
17. Получить значения J# для проектов, которые получают, по крайней мере,
несколько деталей от поставщика S5.
Сравните ваши решения. Какие запросы проще сформулировать в ре-
ляционной алгебре, какие – в реляционном исчислении? В каждом случае
объясните, почему вы сочли, что задача проще решается в том или ином язы-
ке. Какой из двух языков вы предпочитаете? Почему?
Лабораторная работа № 2
Тема: Язык SQL
⇒ Пользуясь данными из лабораторной работы №1, сформулируйте
все запросы, указанные в ней, на языке SQL.
⇒ Сформулируйте запросы для вычисления итогов на языке SQL.
Можно ли сформулировать эти запросы с помощью реляционной алгебры
или реляционного исчисления?
18. Получить значения общего числа проектов, снабжаемых поставщиком S5.
19. Получить значение общего количества деталей P2, поставляемых постав-
щиком S5.
20. Для каждой детали, поставляемой для некоторого проекта, получить ее
номер, номер проекта и значение общего количества данной детали в проек-
те.
⇒ Напишите операции изменения БД, выполняющие следующие дей-
ствия:
21. Изменить название проекта J6 на «VIDEO».
22. Изменить цвет всех красных деталей на оранжевый.
23. Сделать все необходимые изменения для случая, когда определенное ко-
личество деталей P1, поставляемых для проекта J1 поставщиком S1, должно
теперь поставляться поставщиком S2.
24. Добавить картежи (“P7”, “WASHER”,”GREY”, 1) и (“P8”, “SCREW”,
“YELLOW”, 2) в отношение «ДЕТАЛЬ».
25. Удалить все красные детали и соответствующие картежи отношения
«ЗАКАЗ».
⇒ Описать схему базы данных ЗАКАЗЫ.
52
КОНТРОЛЬНЫЕ ЗАДАНИЯ ПО SQL
Даны три таблицы, составляющих базу данных строительной компании
«Премьер».
Рабочий
ID_
рабочего
ФИО
рабочего
Почасовая
Ставка
Специальность ID_Начальника
1235 М.Фарадей 13р. Электрик 1311
1311 Х.Колумб 16р. Электрик 1311
1412 К.Немо 14р. Штукатур 1520
1520 Г.Риковер 12р. Штукатур 1520
2920 Р.Гаррет 10р. Кровельщик 2920
3001 Дж.Барристер 8р. Плотник 3231
3231 П.Мейсон 17р. Плотник 3231
Здание
ID
Здания
Адрес Тип Уровень
Сложности
111 Ул. Осиновая, 1213 Офис 4
210 Ул. Березовая, 1011 Офис 2
312 Ул. Вязов, 123 Жилой Дом 3
435 Ул. Кленовая, 456 Магазин 1
460 Ул. Буковая, 1415 Склад 3
515 Ул. Дубовая, 789 Жилой Дом 3
График
ID
Рабочего
ID
Здания
Дата Начала
Работы
Количество
Дней
1235 312 10 октября 2000 г. 5
1235 515 17 октября 2000 г. 22
1311 435 8 октября 2000 г. 12
1311 460 23 октября 2000 г. 24
1412 111 1 декабря 2000 г. 4
1412 210 15 ноября 2000 г. 12
1412 312 1 октября 2000 г. 10
1412 435 15 октября 2000 г. 15
1412 460 8 декабря 2000 г. 18
1412 515 5 ноября 2000 г. 8
1520 312 30 октября 2000 г. 17
1520 515 9 октября 2000 г. 14
2920 210 10 ноября 2000 г. 15