Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
директорская работа.doc
Скачиваний:
0
Добавлен:
18.11.2019
Размер:
513.02 Кб
Скачать

Использование like

Выдать перечень салатов

Результат:

SELECT Блюдо

FROM Блюда

WHERE Блюдо LIKE 'Салат%';

Блюдо

Салат летний

Салат мясной

Салат витаминный

Салат рыбный

Обычная форма "имя_столбца LIKE текстовая_константа" для столбца текстового типа позволяет отыскать все значения указанного столбца, соответствующие образцу, заданному "текстовой_константой". Символы этой константы интерпретируются следующим образом:

  • символ _ (подчеркивание) – заменяет любой одиночный символ,

  • символ % (процент) – заменяет любую последовательность из N символов (где N может быть нулем),

  • все другие символы означают просто сами себя.

Следовательно, в приведенном примере SELECT будет осуществлять выборку записей из таблицы Блюда, для которых значение в столбце Блюдо начинается сочетанием 'Салат' и содержит любую последовательность из нуля или более символов, следующих за сочетанием 'Салат'. Если бы среди блюд были "Луковый салат", "Фруктовый салат" и т.п., то они не были бы найдены. Для их отыскания надо изменить фразу WHERE:

WHERE Блюдо LIKE '%салат%'

или при отсутствии различий между малыми и большими буквами (такую настройку допускают некоторые СУБД):

WHERE Блюдо LIKE '%Салат%'

Это позволит отыскать все салаты.

3. Суть реляційного підходу до проектування баз даних

Скориставшись підходом, що грунтується на нормалізації, або реляційному підході, можна спроектувати оптимальну логіч­ну модель БД. Остання не має аномалій, пов'язаних з модифі­кацією БД, тобто проблем, що можуть виникнути внаслідок за­мін, вставок і вилучення даних з БД.

Концепцію реляційної моделі запропонував американський учений Е. Ф. Кодд у 1970 р. Виникнення її пов'язане з розв'я­занням проблеми забезпечення незалежності даних та їх опису від прикладних програм.

В основу реляційних моделей покладено поняття «відношен­ня», яке є засобом структуризації даних. Відношення має вигляд поіменованої двовимірної плоскої таблиці. Рядки такої таблиці називаються кортежами, а сукупність атрибутів певного стовп­ця— доменом. Реляційна БД — це набір взаємозв'язаних відношень, які мо­жна поділити на два класи: об'єктні і зв'язкові. Об'єктні відношення зберігають дані про інформаційні об'єкти предметної області. В об'єктному відношенні один з атрибутів однозначно ідентифікує окрему сутність предметної області. Такий атри­бут називається первинним ключем відношення.

Ключ може вміщувати кілька атрибутів, тобто бути складо­вим. В об'єктному відношенні не повинно бути рядків з одна­ковим первинним ключем, тобто не допускається дублювання об'єктів. Це основне обмеження реляційної моделі, яке нео­бхідно виконувати для забезпечення цілісності даних. Зв'яз­кове відношення зберігає первинні ключі двох або більше об'єктних відношень, за якими встановлюються зв'язки між ними.

У реляційній БД накладається ще одне обмеження — відношен­ня мають бути нормалізовані.

Білет 18

1. Аудит системних подій

Аудит системних подій можна запустити за допомогою команди:

AUDIT список_імен_подій або системних_привілеїв

[BY список_користувачів]

[WHENEVER [NOT] SUCCESSFUL];

Параметр список_імен_подій може включати такі дії, як фіксація входження користувача в систему або неуспішної спроби виконати SQL-речення, якщо об’єкт бази даних не існує, CREATE, DROP, ALTER та ін.

Конструкція BY користувач означає, що фіксуються дії тільки конкретного користувача чи перерахованих у списку користувачів. Якщо вона не зазначена, то фіксуються дії всіх користувачів.

Конструкція WHENEVER SUCCESSFUL означає, що в таблицю аудиту заноситься запис про дію тільки у випадку успішного (NOT – неуспішного) виконання операції. Якщо конструкція WHENEVER не зазначена, то аудиторський запис вноситься незалежно від успішності виконання операції.

2. Агрегування даних SQL функції

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]