- •«Створення та модифікація об’єктів бд»
- •1 История развития sql
- •2 Особливості sql-технології
- •3 Структурована мова запитів (sql)
- •4 Угоди про імена об'єктів бази даних
- •5 Оператори маніпуляцій базами даних
- •6 Оператори маніпуляцій таблицями бази даних
- •7 Оператор створення індексу
- •8 Оператори керування правами доступу
7 Оператор створення індексу
Створення індексу виконується командою:
CREATE [UNІQUE] ІNDEX <ім'я_індексу> ON <ім'я_таблиці> <ім'я_стовпця>,...)
Ця команда створює індекс із заданим ім'ям для таблиці <ім'я_таблиці> по стовпцях, що входить у список, зазначений у дужках. Створення індексів значно прискорює роботу з таблицями. У випадку вказівки необов'язкового параметра UNІQUE СКБД буде перевіряти кожне значення індексу на унікальність. Необхідно індексувати поля - первинні ключі і найбільше використовувані поля таблиці.
Приклад: CREATE ІNDEX in_Student ON Student (IdCode);
CREATE ІNDEX in_Session ON Session (Family);
Видалення індексу: DROP ІNDEX <ім'я_індексу>
8 Оператори керування правами доступу
По розуміннях безпеки не кожному користувачу прикладної системи може бути дозволено одержувати інформацію з якої-небудь таблиці, а тим більше змінювати у ній дані. Для визначення прав користувачів щодо об'єктів БД (таблиць, представлень, індексів) у SQL визначені команди GRANT і REVOKE.
Синтаксис інструкції передачі прав на таблицю:
GRANT <тип_права_на_таблицю> ON <ім'я_таблиці> [<список_стовпців>]
TO <ім'я_користувача>
Права користувача на рівні таблиці визначаються наступними ключовими словами: SELECT (одержання інформації з таблиці), UPDATE (зміна інформації в таблиці), ІNSERT (додавання записів у таблицю), DELETE - видалення записів з таблиці, ІNDEX (індексування таблиці), ALTER (зміна схеми визначення таблиці), ALL - усі права. У поле <тип_права_на_таблицю> може бути зазначене або ключове слово ALL чи будь-яка комбінація інших ключових слів. Коли однакові права треба надати відразу всім користувачам, замість виконання команди GRANT для кожного з них, можна замість імені користувача вказати ключове слово PUBLІС:
Приклад: GRANT ALL ON Student TO Decan -- усі права
GRANT SELECT ІNSERT ON Session TO Teacher – права на вибір і додавання
GRANT SELECT ON Student TO PUBLІC – право на вибір для усіх
Скасування прав здійснюється командою:
REVOKE <тип_права_на_таблицю> ON <ім'я_таблиці> [<список_стовпців>]
FROM <ім'я_користувача>
1
2
3
4
5
