Структурована мова запитів sql
В основі структурованого мови запитів SQL лежить реляційне числення кортежів.
Загальна характеристика мови запитів SQL
SQL може виконувати операції над таблицями і над даними таблиць.
Мова SQL називають вбудованим. тому він містить функцій повноцінного мови розробки, а орієнтується на доступ до даних, внаслідок чого він входить до складу засобів розробки додатків. Стандарти мови SQL підтримують мови програмування Pascal, Fortran, COBOL, С та ін.
Існує 2 методи використання вбудованого SQL:
- статичне використання мови (статичний SQL) - в тексті програми містяться виклики функцій SQL, які включають в виконуваний модуль після компіляції.
- динамічне використання мови (динамічний SQL) - динамічну побудову викликів функцій SQL і їх інтерпретація. Наприклад. можна звернутися до даних віддаленої БД в процесі виконання програми.
Мова SQL (як і інші мови для роботи з БД) призначений для підготовки і виконання запитів. В результаті виконання запиту даних з однієї або декількох таблиць отримують безліч записів, яке називають поданням.
Уявлення - це таблиця, яка формується в результаті виконання запиту.
Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!
Напишемо недорого і точно в строк! Більш 50 000 перевірених фахівців
Оператори мови SQL умовно поділяються на 2 под'язика:
У таблиці символом * позначені специфічні оператори мови.
Розглянемо найважливіші оператори SQL.
Оператор створення таблиці:
Ім'я таблиці, яка створюється, і ім'я хоча б одного стовпчика (поля) є обов'язковими операндами. Для імені стовпця необхідно вказати тип даних, які будуть в ньому зберігатися.
Для окремих полів можна вказувати додаткові правила контролю значень, які в них вводяться. Наприклад, NOT NULL означає, що поле не може бути порожнім і в нього має бути введено значення.
Для створення таблиці books каталогу книг, яка містить поля:
name - назва книги,
оператор може виглядати наступним чином:
Оператор зміни структури таблиці:
При зміні структури таблиці можна додавати (ADD), змінювати (MODIFY) або видаляти (DROP) один або декілька стовпців таблиці. Правила запису даного оператора такі ж, як і для оператора CREATE TABLE. Щоб видалити стовпець вказувати не потрібно.
Для додавання до таблиці books поля number. в якому буде зберігатися кількість книг, можна записати оператор:
Оператор видалення таблиці:
Наприклад, щоб видалити існуючу таблицю з ім'ям books досить скористатися оператором:
Оператор створення індексу:
Оператор створює індекс для одного або декількох стовпців цієї таблиці, який дозволяє прискорити виконання операцій запиту і пошуку. Для однієї таблиці може бути створено кілька індексів.
Необов'язкова опція UNIQUE відповідає за забезпечення унікальності значень у всіх шпальтах, які вказані в операторі.
ASC задає автоматичне сортування значень в стовпцях в порядку зростання (за замовчуванням), а DESC - в порядку убування.
Оператор видалення індексу:
Оператор створення уявлення:
При створенні вистави можна не вказувати імена стовпців. Тоді будуть використані імена стовпців із запиту, який описується відповідним оператором SELECT.
Оператор видалення уявлення:
Оператор вибірки записів:
Оператор SELECT виробляє вибірку і обчислення над даними з однієї або декількох таблиць. Результат виконання оператора - відповідна таблиця, яка містить (ALL) або не містить (DISTINCT) рядки, які повторюються.
Операнд FROM містить список таблиць, з яких беруться записи для відбору даних.
Оператор зміни записів:
Нові значення полів в записах можуть не містити значень (NULL) або обчислюватися відповідно до арифметичному вираженню.
Оператор вставки нових записів:
У першому записі оператора INSERT вводяться нові записи з заданими значеннями в стовпчиках.
У другому записи оператора INSERT вводяться нові рядки, відібрані з іншої таблиці через пропозицію SELECT.
Оператор видалення записів:
В результаті виконання оператора видаляються з зазначеної таблиці рядки, що задовольняють умові, яке визначено необов'язковим операндом WHERE. Якщо операнд WHERE не вказано, то видаляються всі записи таблиці.
Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!