Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_ОБД.doc
Скачиваний:
8
Добавлен:
05.03.2016
Размер:
200.19 Кб
Скачать

Порядок виконання роботи

  1. Ознайомитись із синтаксисом sql-запитів щодо вибірки та пошуку даних

  2. Реалізувати 10 запитів з допомогою sql-запитів, що відображають всі операції реляційної алгебри

  3. Представити результати запитів у вигляді рисунків (screen-shot).

  4. Оформити звіт по виконанні лабораторної роботи.

Оформлення звіту:

  1. Титульний лист.

  2. Мета роботи.

  3. Порядок виконання.

  4. Таблиці та рисунки.

  5. Висновки.

Контрольні питання

  1. Оператор вибірки.

  2. Оператор умови.

  3. Складні запити. Підзапити.

  4. Використання первинних ключів.

  5. Застосування зовнішніх ключів.

Список рекомендованої літератури

  1. В.В. Пасічник, В.А. Резніченко. Організація баз даних та знань. – К:. Видавнича група BHV, 2006. – 384 с.

  2. К.Дж. Дейт. Введение в системы баз данных. Киев, «Вильямс», 2001;

  3. Д. Ульман, Д. Уиндом. Введение в системы баз данных. Москва, Лори, 2000;

  4. М. Грабер. Введение в SQL. Москва, Лори, 1996.

ЛАБОРАТОРНА РОБОТА № 5

ЗАСТОСУВАННЯ ЗАПИТІВ З МАНІПУЛЮВАННЯ ДАНИМИ НА МОВІ SQL.

Мета роботи: маніпулювання даними з допомогоюsql-запитів.

Короткі теоретичні відомості

Мова йтиме про оператори SQL, що дають змогу маніпулювати даними: INSERT, UPDATE і DELETE.

4.3.1. Додавання рядків до таблиці. Оператор INSERT

Оператор INSERT дає змогу вводити дані до БД. Є два різновиди цього оператора:

INSERT...VALUES

INSERT...SELECT

Оператор INSERT...VALUES

Цей оператор дає можливість додати до таблиці один рядок і має такий формат:

INSERT INTO <ім'я таблиці> (<поле 1> [, <поле 2>]...) VALUES (<значення 1> [. <значення 2>]...)

Виконання цього оператора потребує дотримання певних правил:

  • типи даних, що вставляються, мають узгоджуватися з типами даних відповід­них стовпців;

  • розміри даних мають відповідати розмірам стовпців;

  • порядок даних у фразі VALUES має відповідати порядку стовпців у фразі IN­SERT INTO.

Наведемо кілька прикладів.

Багато СКБД дають змогу означувати стовпці із властивістю UNIQUE. В межах таблиці значення такого стовпця мають бути унікальними. Якщо це обмеження порушується, під час додавання рядків можуть виникнути помилки. Зазначимо, що стовпці із властивістю UNIQUE не можуть містити NULL-значень.

Оператор INSERT...SELECT

Цей оператор дає змогу додати до таблиці множину рядків (результат виконання запиту) і, таким чином, дозволяє копіювати інформацію з однієї чи кількох таб­лиць до іншої. Часто за допомогою оператора INSERT...SELECT дані копіюються до похідних таблиць, що створюються з метою підвищення продуктивності вико­нання тих чи інших операцій над базою даних. Оператор має такий формат:

INSERT INTO <ім'я таблиці> (<список полів>) SELECT<список полів> FROM<ім'я таблиці>WHERE <умова пошуку>

Вихідні результати стандартного оператора SELECT є вхідними даними для опе­ратора INSERT. Наведемо приклад.

Для оператора INSERT...SELECT мають виконуватися додаткові правила:

  • оператор SELECT не може вибирати рядок із таблиці, до якої здійснюється до­давання;

  • кількість стовпців у фразі INSERT INTO має збігатися з кількістю стовпців у фра­зі SELECT;

  • типи даних стовпців у фразі INSERT INTO мають збігатися з типами даних стовп­ців у фразі SELECT.

Оператор UPDATE надає можливість змінювати значення у наявних рядках. Його синтаксис такий:

UPDATE <ін'я таблиці> SET <поле 1> = <вираз 1> [, <поле 2> = <вираз 2>]...

[WHERE <умова пошуку>]

Усі рядки таблиці, які задовольняють задану у фразі WHERE умову, змінюються згідно з фразою SET.

Якщо фразу WHERE не задано, то оновлюються всі рядки.

Оператор DELETE дає змогу видаляти рядки таблиці й має такий синтаксис:

DELETE FROM <ім'я таблиці> [WHERE умова]

Залежно від наявності та змісту фрази WHERE можна видалити один рядок, мно­жину рядків, усі рядки або не видалити жодного.

Назвемо кілька особливостей використання оператора DELETE.

Оператор не дає змоги видаляти окремі поля (використовуйте для цього опе­ратор UPDATE), видаляючи рядок повністю.

Застосування оператора DELETE, як і INSERT та UPDATE, може призвести до пору­шення цілісності бази даних.

Якщо у фразі WHERE використовується вкладений підзапит, то у фразі FROM цього підзапиту не можна зазначати таблицю, з якої видаляються рядки. Це сто­сується також операторів INSERT та UPDATE.

Оператор видаляє лише рядки таблиці, а не саму таблицю. Для видалення всієї таблиці слід застосувати оператор DROP TABLE.

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