
- •Модуль 1 Тема 1. Вступ до sql. Синтаксис sql. Типи даних.
- •1. Вступ до sql.
- •Функції sql:
- •Роль sql
- •Переваги sql:
- •Синтаксис sql.
- •Типи даних.
- •1.3.1. Команди
- •1.3.2. Імена
- •1.3.3. Типи даних
- •1.3.4. Константи
- •1.3.4.1. Числові константи
- •1 .3.4.2. Літерні рядки
- •1.3.4.3. Константи дати і часу
- •1.3.4.4. Іменовані константи
- •1.3.5. Вирази
- •1.3.6. Вбудовані функції
- •Тема 2. Створення баз даних
- •Мова визначення даних
- •2. Створення бази даних
- •Тема 3. Створення таблиць
- •1. Команда створення таблиці.
- •2. Заборона значення null за допомогою обмеження not null
- •Тема 4. Вставка стрічок з допомогою оператора insert. Вилучення стрічок з допомогою оператора delete, редагування стрічки з допомогою команди update.
- •Вставка рядків за допомогою команди insert.
- •Додавання рядка за допомогою положення стовпця
- •Додавання рядка за допомогою назв стовпців
- •Додавання рядків з однієї таблиці в іншу
- •Зміна рядків за допомогою команди update.
- •Зміна рядків
- •Видалення рядків за допомогою команди delete
- •Видалення рядків
- •Тема 5. Оператор select
- •Оператор select.
- •Обчислювальні стовпчики. Альтернативне ім’я стовпчику.
- •Порівняння значення стовпчика із константою
- •Правила виконання однотабличних запитів на вибірку
- •Тема 6. Комбінування умов з допомогою операторів and, or, not. Порівняння по шаблону. Порівняння з діапазоном. Сортування стрічок з допомогою речення order by.
- •Порівняння значень виразів має наступну синтаксичну діаграму:
- •Тема 7. Створення псевдонімів. З’єднання таблиці із собою. Вибір даних з кількох таблиць
- •1. Створення псевдонімів.
- •2. З’єднання таблиці із собою.
- •3. Просте з’єднання таблиць (з’єднання за рівністю)
- •Запити з використанням відношення „головна – підлегла” таблиці (предок – нащадок)
- •3. Запити на вибірку до трьох і більше таблиць
- •4. Запити на об’єднання
- •Тема 8. Введення обмежень в базах даних
- •1. Види обмежень в базі даних.
- •Основні принципи роботи з обмеженнями
- •Присвоєння назви обмеженню
- •2. Первинний і унікальний ключі.
- •3. Зовнішні ключі.
- •4. Обмеження check
- •5. Вилучення обмежень.
- •Тема 9. Використання збережуваних процедур в базах даних. Використання генераторів ключів у базах даних в InterBase. Використання тригерів у базах даних.
- •1. Визначення збережуваної процедури.
- •1.2. Цикли й оператори розгалуження.
- •2. Створення генераторів.
- •2.1. Індекси.
- •2.2. Обробка виключень і помилок.
- •3. 1.Означення тригера.
- •3.2. Приклад тригера.
- •3.3. Контекстні змінні.
- •Тема 10. Безпека в базах даних
- •1. Користувач InterBase.
- •3. Організація користувачі у групи за допомогою ролей.
- •4. Права. Роздача прав.
- •5. Анулювання прав.
- •Модуль 2 Тема 11. Оператор exists. Сумування і групування даних.
- •1.1. Оператор exists.
- •1.2. Використання exists з співвіднесеними підзапитами.
- •1.3. Комбінація оператора exists і з’єднання.
- •1.4. Використання not exists.
- •1.5. Використання складних підзаписів з оператором exists.
- •2.1. Агрегатні (статистичні) функції
- •2.2. Правила опрацювання значення null агрегатними функціями:
- •2.3.Опрацювання унікальних записів агрегатними функціями
- •2.4. Агрегатні функції і значення null
- •3.1. Групування записів
- •3.2. Секція having – умова відбору груп
- •3.3. Обмеження на умову відбору груп
- •3.4. Значення null і умова відбору груп
- •3.5. Секція having без секції group by
- •Тема 12. З’єднання з базою даних. Використання збережуваних процедур в Delphi
- •1. З’єднання з сервером
- •2. Використання збережуваних процедур в Delphi.
- •Компонент tStoredProc.
- •Тема 13. Використання механізму транзакцій компонента Database. Керування транзакціями
- •Тема 14. Сервер баз даних InterBase і компоненти InterBase Express.
- •1. Сервер баз даних InterBase і компоненти InterBase Express
- •2. Механізм доступу до даних InterBase Express
- •3. Компонент tibDatabase.
- •Тема 15. Виконання запитів за допомогою компонента tibDataSet
- •1. Вибірка даних з таблиці.
- •2. Редагування даних за допомогою візуальних компонентів.
- •3. Програмне редагування даних.
- •Тема 16. Підпорядковані запити в таблицях Механізм master-detail
- •Література
1.3.6. Вбудовані функції
Вбудовані функції в стандарті SQL1 взагалі не були визначені. В стандарт SQL2 ввійшли самі поширені.
Вбудовані функції за стандартом SQL2
Функція |
Значення, яке повертається |
BIT_LENGTH (рядок) |
- кількість бітів у рядку; |
CAST (значення AS тип даних) |
- значення перетворене до вказаного типу даних; |
CHAR_LENGTH (рядок) |
- кількість символів у рядку; |
CONVERT (рядок USING функція) |
- рядок перетворений згідно заданої функції; |
CURRENT_DATE |
- повертає біжучу дату; |
CURRENT_TIME (точність) |
- біжучий час із заданою точністю; |
CURRENT_TIMESTAMP (точність) |
- біжуча дата і час із вказаною точністю; |
EXTRACT (частина FROM значення) |
- визначає частину із вказаного значення. Частина типу DAY, HOUR, … Значення типу DATETIME; |
LOWER (рядок) |
- рядок, перетворений до нижнього регістру; |
OCTET_LENGTH (рядок) |
- кількість байтів у рядку; |
POSITION (підрядок IN рядок) |
- позиція, з якої починається входження підрядка у рядок; |
SUBSTRING (рядок FROM n FOR довжина) |
- частина рядка, яка починається із n-го символу і має вказану довжину; |
TRANSLATE (рядок USING функція) |
- рядок, відтрансльований за допомогою вказаної функції; |
TRIM (BOTH символ FROM рядок) |
- рядок, із якого вилучені перші та останні вказані символи; |
TRIM (LEADING символ FROM рядок) |
- рядок, із якого вилучені вказані символи; |
TRIM (TRAILING символ FROM рядок) |
- рядок, із якого вилучені останні вказані символи; |
UPPER (рядок) |
- рядок, перетворений до верхнього регістру. |
Контрольні питання:
-
Дайте визначення SQL.
-
Що таке синтаксис та семантика?
-
На які групи поділяються команди SQL?
-
Що виконують команди групи DML, DDL, DCL?
-
Вкажіть основні функції SQL.
-
Яка роль SQL?
-
Вкажіть основні переваги SQL.
-
Що таке коментар, команда sql, речення, ключові слова, ідентифікатори у мові SQL?
-
Назвіть основні команди SQL.
-
Який формат речень SQL?
-
Який запис повного імені стовпця?
-
Вкажіть типи даних в SQL.
-
Що таке константа і які типи констант розрізняють в SQL?
-
Вкажіть функції в стандарті SQL.
Тема 2. Створення баз даних
-
Мова визначення даних.
-
Створення бази даних.
-
Мова визначення даних
Команди SELECT, INSERT, DELETE, UPDATE, COMMITE, ROLLBACK утворюють мову опрацювання даних DML (Date Manipulation Language). Команди DML можуть модифікувати інформацію, яка зберігається в базі даних, але не можуть змінювати її структуру. Зокрема, ці команди не можуть створювати чи вилучати таблиці або стовпчики. Для зміни структури бази даних призначений інший набір команд SQL, який називається мовою визначення даних DDL (Date Definition Language). Ці команди дозволяють:
-
визначити структуру нової таблиці та створити її;
-
вилучити таблицю, яка вже не потрібна;
-
змінити визначення, тобто структуру для створеної таблиці;
-
визначити віртуальну таблицю;
-
реалізувати безпеку бази даних;
-
створювати індекс для прискореного доступу до даних в таблиці;
-
керувати фізичним розміщенням даних.
Ядро DDL утворюють три команди:
-
CREATE – дозволяє визначити та створити об’єкт бази даних;
-
DROP – дозволяє вилучити існуючий об’єкт бази даних;
-
ALTER – дозволяє змінити визначення (структуру) існуючого об’єкту бази даних.
Всі основні реляційні бази даних дозволяють використовувати ці команди під час своєї роботи. Тобто структура реляційної бази даних є динамічною.
Стандарт SQL2 вимагає, щоб інструкції DDL можна було виконувати як в інтерактивному режимі, так і програмно.