
- •Державна податкова адміністрація україни
- •Поняття інформаційної системи
- •Життєвий цикл інформаційної системи
- •Історія розвитку субд
- •Реляційна модель даних
- •Математичні відношення
- •Реляційні ключі
- •Реляційна цілісність
- •Реляційна алгебра
- •Операції з’єднання
- •Нормалізовані відношення
- •Коли субд можна вважати реляційною
- •Основні типи даних визначених стандартом iso
- •Integer
- •Формати представлення дат
- •Формат time
- •Коротка характеристика сучасних субд
- •Основи мови sql
- •Insert into ustanova(kod,nazva) values(10234,’Академія дпс України’)
- •Прості запити
- •Умова відбору (ключове слово where)
- •Зрівняння
- •Використання діапазонів (between / not between)
- •Умови відбору з перевіркою входження у множину (in / not in)
- •Умови відбору з допомогою шаблону (like / not like)
- •Використання значення null в умовах відбору (is null / not null)
- •Використання множини таблиць в одному запиті
- •Імена таблиць і стовпчиків
- •З’єднання таблиць (join)
- •Ліве з’єднання (left join)
- •Сортування результату (фраза order by)
- •Групування результатів (фраза group by). Агрегатні функції
- •Використання фрази group by
- •Використання фрази having
- •Підзапити
- •Ключові слова any I all
- •Ключові слова exists I not exists
- •Комбінування результуючих таблиць (операції union, intersect і except)
- •Поновлення бази даних
- •Вставка нових даних
- •Модифікація даних (оператор update)
- •Використання inner join, left join в операторі update
- •Видалення даних з бази(оператор delete)
- •Визначення даних
- •Створення баз даних
- •Створення таблиць (оператор create table)
- •Видалення таблиць (оператор drop table)
- •Створення індексу (оператор create index)
- •Видалення індексу (оператор drop index)
- •Модифікація структури таблиці (оператор alter table)
- •Використання транзакцій
- •Управління доступом даних
- •Надання привілеїв іншим користувачам (оператор grant)
- •Відміна наданих привілеїв (оператор revoke)
Видалення таблиць (оператор drop table)
Непотрібні таблиці видаляються з бази з допомогою оператора DROP TABLE, який має формат:
DROP TABLE table_name[RESTRICT | CASCADE]
Наприклад, для видалення таблиці Vidomist з бази необхідно застосувати оператор:
DROP TABLE Vidomist
Якщо в операторі вказано ключове слово RESTRICT і в базі існує хоча б один об’єкт, який пов’язаний з таблицею table_name (наприклад, VIEW в якому використовується ця таблиця), операція видалення буде відхилена. Якщо в операторі вказано ключове слово CASCADE, автоматично буде видалена таблиця table_name і всі об’єкти, які пов’язані з цією таблицею.
Створення індексу (оператор create index)
Індекс – це об’єкт бази даних, з допомогою якого істотно збільшується швидкість пошуку даних в таблицях. Створення індексів не передбачено стандартом, але більшість розробників СУБД підтримують такий оператор:
CREATE [UNIQUE] INDEX index_name
ON table_name(column [ASC | DESC][,…])
Вказані в операторі стовпчики утворюють ключ індексу. Індекси можуть створюватись лише для таблиць бази даних. Наприклад, оператор:
CREATE INDEX ind_osobaON Osoba (kod ASC)
створює індекс ind_osoba по полю kod у висхідному порядку для таблиці Osoba.
Якщо в операторі вказано ключове слово UNIQUE, автоматично буде підтримуватись унікальність значень ключа. Тобто СУБД не дозволить існування двох рядків з однаковим
значенням індексу. В нашому прикладі це означає, що СУБД не допустить двох і більше рядків у таблиці Osoba з однаковим кодом.
Видалення індексу (оператор drop index)
Оператор DROP INDEX видаляє з бази створений раніше індекс. Він має формат:
DROP INDEX index_name
Наприклад, оператор
DROP INDEX ind_osoba
видаляє з бази створений раніше індекс ind_osoba для таблиці Osoba.
Модифікація структури таблиці (оператор alter table)
Для зміни структури існуючої таблиці стандартом ISO передбачено оператор ALTER TABLE. Визначення цього оператора містить шість параметрів для виконання таких операцій:
вставка в таблицю нового стовпчика;
видалення стовпчика з таблиці;
видалення з визначення таблиці існуючого обмеження;
визначення для зазначеного стовпчика значення за змовчуванням;
відміна встановленого значення за змовчуванням для даного стовпчика.
Оператор ALTER TABLE має такий формат:
ALTER TABLE table_name
[ADD [COLUMN] column_name data_type[NOT NULL] [UNIQUE]
[DEFAULT default_option] [CHECK (search_condition)]]
[DROP [COLUMN] column_name[RESTRICT | CASCADE]]
[ADD [CONSTRAINT [constrain_name]]table_constraint_definition]
[DROP CONSTRAINT constrain_name[RESTRICT | CASCADE]]
[ALTER [COLUMN] SET DEFAULT default_option]
[ALTER [COLUMN] DROP DEFAULT]
Тут параметри мають ті ж призначення, що і в операторі CREATE TABLE. Параметрtable_constraint_definitionможе приймати одне з таких значень: PRIMARY KEY, UNIQUE, FOREIGN KEY, CHECK. У фразі DROP COLUMNcolumn_nameзадається ім’я стовпчика, який видаляється з таблиці. Кваліфікатор RESTRICT означає, що якщо на даний стовпчик посилається який небудь інший об’єкт бази, він з таблиці не видалиться; кваліфікатор CASCADE означає, що крім стовпчика вказаної таблиці будуть видалені всі посилання на даний стовпчик в базі. За змовчуванням діє кваліфікатор RESTRICT.
Оператор ALTER TABLE реалізовано не у всіх діалектах SQL. В деяких діалектах підтримується урізаний варіант цього оператора (не дозволяється видаляти вже існуючі стовпчики).