Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
m_DBSQL_mu.docx
Скачиваний:
28
Добавлен:
17.03.2016
Размер:
373.51 Кб
Скачать

Висновок

Стандарт SQL - це сотні сторінок тексту. Будь-яка комерційна реалізація мови пропонує безліч додаткових можливостей і розширень. Оскільки метою цієї роботи було ознайомлення з основними принципами маніпулювання даними та введення в SQL, то за рамками роботи залишилися багато можливостей мови. Коротко перелічимо зачеплені теми:

• Поняття індексу та робота з індексами в SQL;

• Поняття транзакції і оператори управління транзакціями в SQL;

• Оператори адміністрування в SQL;

• Розмежування прав доступу в SQL;

• Вбудований SQL і поняття курсору;

• Оптимізація запитів.

Лабораторний практикум Лабораторна робота № 1

Тема: Реляційна алгебра і реляційне числення

Дано чотири таблиці. У них зберігається інформація про постачальників (ПОСТАЧАЛЬНИК), деталі(ДЕТАЛЬ), проекти(ПРОЕКТ), а також про кількість деталей, що поставляються конкретним постачальником для деякого проекту (ЗАМОВЛЕННЯ).

ПОСТАЧАЛЬНИК

NP

NAMEPOST

STATUS

GOROD

Sl

Smith

l0

London

S2

Jones

20

Paris

Black

З0

Paris

S4

Clark

20

London

Adams

З0

Athens

ДЕТАЛЬ

ND

NAME DET

COLOR

VES

Pl

Nut

Red

l2

P2

Bolt

Green

l7

Screw

Blue

l7

P4

Screw

Red

l4

Cam

Blue

l2

P6

Cog

Red

l9

ПРОЕКТ

NPR

NAME PRO

GOROD

Jl

Sorter

Paris

J2

Penuche

Rome

Reader

Athens

J4

Console

Athens

Collator

London

J6

Terminal

Oslo

J7

Tape

London

ЗАКАЗ

NP

ND

NPR

NUMBER

Sl

Pl

Jl

400

S2

Jl

60

Jl

400

S2

J2

З00

S2

J2

ЗЗЗ

P4

J2

200

P2

J2

400

P6

J2

40

S2

l00

S4

P6

l200

Sl

Pl

J4

З000

S2

J4

4З0

P2

J4

З00

Pl

J4

З0

J4

70

P4

J4

l400

J4

400

P6

J4

780

S2

790

l00

S2

J6

l000

S2

J7

8З0

S4

P6

J7

800

J7

20

Дайте рішення наступних завдань, створюючи запити на мові реляційної алгебри і реляційного числення.

1. Отримати повні відомості про всі проекти.

2. Отримати повні відомості про всі проекти в Лондоні.

3. Отримати номери деталей, для яких немає іншої деталі, що має менше значення ваги.

4. Отримати значення S # для постачальників, які виконують поставки для проекту J1.

5. Отримати значення S # для постачальників, які постачають для проекту J1 деталь P1.

6. Отримати назви проектів (JNAME), для яких виконує поставки постачальник S1.

7. Отримати значення кольорів (COLOR) для деталей, що поставляються постачальником S1.

8. Отримати номери постачальників (S#), що поставляють деталі як для проекту J1, так і для проекту J2.

9. Отримати значення P# для деталей, що поставляються для будь-якого проекту в Лондоні.

10. Отримати значення S # для постачальників, які постачають для проектів в Парижі чи Лондоні червону (RED) деталь.

11. Отримати значення P # для деталей, що поставляються для будь-якого проекту постачальником, що знаходиться в тому ж місті.

12. Отримати значення J # для проектів, в які не поставляється жодної червоної деталі постачальником з Лондона.

13. Отримати значення S # для постачальників, які постачають одну і ту ж деталь для всіх проектів.

14. Отримати значення J # для проектів, наданих повністю постачальником S2.

15. Отримати значення номерів тих деталей (P #), які поставляються для всіх проектів в Лондоні.

16. Отримати значення J # для проектів, наданих, принаймні, всіма деталями, які поставляються постачальником S2.

17. Отримати значення J # для проектів, які отримують, принаймні, кілька деталей від постачальника S5.

Порівняйте ваші рішення. Які запити простіше сформулювати в реляційній алгебрі, які - в реляційному обчисленні? У кожному разі поясніть, чому ви визнали, що завдання простіше вирішується в тій чи іншій мові. Який з двох мов ви віддаєте перевагу? Чому?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]