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

Зміст бази даних змінюють три оператора SQL:

INSERT - додає нові рядки;

DELETE – видаляє рядки;

UPDATE - оновлює дані.

В реляційних СКБД існує три способи добавити нові рядки в БД:

- однорядкові оператор INSERT дозволяє добавити в таблицю один новий рядок;

- багаторядковий оператор INSERT пересилає рядки з однієї таблиці до іншої;

- утиліта пакетного завантаження додає в таблицю дані з зовнішнього файлу.

 

Синтаксична діаграма однорядкового оператора INSERT

Рядки в таблиці не впорядковані, тому новий рядок в таблиці результатів запитів може знаходитись в будь-якому місці.

Якщо користувач заповнює новий рядок особистої таблиці, то в операторі INSERT визначає просте ім’я таблиці. Щоб вставити новий рядок в таблицю іншого користувача треба записати повне ім’я таблиці.

Список стовпчиків в операторі INSERT встановлює відповідність між значеннями даних і стовпчиками. Усім стовпчикам, імена яких відсутні в списку, автоматично присвоюється значення NULL.

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

INSERT INTO

SALESREPS (NAME, AGE, HIRE_DATE, REP_OFFICE)

VALUES (“Петров”, 36, “25-JUL-01”, 13)

 

Синтаксична діаграма багаторядкового оператора INSERT

Синтаксична діаграма оператора  DELETE

Наприклад, видалити інформацію про Петрова

DELETE FROM SALESREPS

WHERE NAME = “Петров”

 

Опція WHERE може визначити як один рядок, так і декілька – в залежності від конкретної умови.

Якщо опція WHERE взагалі відсутня, то видаляються всі рядки таблиці.

Наприклад, видалити всі закази

DELETE FROM ORDERS

 

Синтаксична діаграма оператора UPDATE

Опція WHERE визначає рядки таблиці, які належить оновити. Опція SET визначає значення яких стовпчиків поновлюється і самі ці значення.

Кожний стовпчик може зустрічатися в списку лише один раз.

 

Приклади.

1. Визначити особистий план в 200 грв. всім службовцям, які в дійсний час не мають плана.

UPDATE SALESREPS

   SET QUOTA = 200.00

   WHERE QUOTA IS NULL

2. Перевести всіх службовців з офісу код якого 13, в офіс з кодом 11 і зменшити їх особисті плани на десять відсотків.

UPDATE SALESREPS

   SET REP_OFFICE = 11, QUOTA = 0.9 * QUOTA

   WHERE REP_OFFICE = 13

3. Якщо опція WHERE в операторі UPDATE відсутня, то оновлюються всі рядки таблиці.

Наприклад, збільшити всі особисті плани на п’ять відсотків.

UPDATE SALESREPS

   SET QUOTA = 1.05 * QUOTA

Хід роботи

По кожному завданню визначити:

1. Аналіз умови завдання;

2. Записати оператор;

3. Аналіз виконаної роботи.

Завдання до л.р.№3

Для кожної таблиці, структуру якої визначили в лабораторній роботі №1:

1. Записати декілька рядків визначивши всі стовпчики;

2. Записати декілька рядків визначивши не всі стовпчики;

3. Навести приклад видалення рядка;

4. Навести приклад корегування значень рядка.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: