- •21. Об’єкти реляційної бази даних. Їх створення та модифікація засобами sql. Приклад реалізації за допомогою Data Definition Language.
- •22. Обмеження реляційної бази даних. Їх створення та модифікація засобами sql. Приклад реалізації Data Definition Language.
- •23.Операції реляційної алгебри та їх реалізація на мові sql.
- •24.Нормальні форми реляційної бази даних. Приклад структури бд та аномалії зміни даних.
- •Аномалии модификации данных
- •25.Теорія множин та реляційні бази даних. Поняття відношення. Особенности теоретико-множественных операций реляционной алгебры
- •Операции объединения, пересечения, взятия разности. Совместимость по объединению
- •Основные понятия
- •26.Поняття транзакції, властивості транзакцій.
- •5.1. Механизм транзакций
- •27.Ізоляція транзакцій. Проблеми паралельної роботи та механізми блокування. Уровни изоляции транзакций
- •5.4. Блокировки
- •28.Ізоляція транзакцій. Визначення графіку виконання та правильного графіку виконання транзакції. Уровни изоляции транзакций
- •29.Ізоляція транзакцій. Рівні ізоляції та управління рівнем ізоляції транзакції в sql сервері. Уровни изоляции
- •Синтаксис операторов sql, определяющих уровни изоляции
- •30.Типи даних та функції для роботи з ними в реляційних базах даних. Приклади використання.
- •31.Представлення (view). Приклади використання.
- •Способ создания и содержимое представлений
- •Использование
- •Команда create view
- •32.Управління доступом до даних в реляційних базах даних. Ролі, користувачі та їх права доступу. Аутентификация и авторизация
- •Методы аутентификации
- •33.Мова xml. Мова xPath. Приклади xml документу та xPath виразів.
- •Синтаксис xPath
- •34.Поняття Web сервісу, стек протоколів ws.
- •Стек протоколов Web Services
- •35. Мови html та css. Приклад html сторінки.
- •Структура html-документа
- •Структура html страницы
- •36. Реалізація ієрархічних структур на ms sql Server. Приклади знаходження елементу структури та всіх його потомків із строки, що містить шлях до елементу Иерархические данные (sql Server)
- •Родители-потомки
- •37.Оператор select. Групові операції. Приклади використання агрегатних функцій.
- •Синтаксис оператора select
- •Групповые функции в операторе select
- •Что такое агрегатные функции ?
- •Как использовать агрегатные функции ?
- •Специальные атрибуты count
- •Использование distinct
- •38.Витяг даних з кількох таблиць. Приклади використання inner join, left(right) outer join, exists, any. Выборка из нескольких таблиц.
- •Специальные операторы any или some
- •Много-столбцовые внешние ключи
- •Ограничение foreign key
- •Манипулирование реляционными данными
- •Целостность в реляционной модели данных
- •Предложение create procedure
- •Предложение alter procedure
- •40.Мова xml. Визначення схеми документу за допомогою xsd. Приклад схеми та документу, що задовольняє цій схемі. Приклад програмної валідації xml документу.
24.Нормальні форми реляційної бази даних. Приклад структури бд та аномалії зміни даних.
Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, которая потенциально может привести к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.
Процесс преобразования отношений базы данных (БД) к виду, отвечающему нормальным формам, называется нормализацией. Нормализация предназначена для приведения структуры БД к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма базы данных.[1] Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации. Общее назначение процесса нормализации заключается в следующем:
исключение некоторых типов избыточности;
устранение некоторых аномалий обновления;
разработка проекта базы данных, который является достаточно «качественным» представлением реального мира, интуитивно понятен и может служить хорошей основой для последующего расширения;
упрощение процедуры применения необходимых ограничений целостности.
Схема как структура базы данных
Схема базы данных MediaWiki
Схема системы базы данных (от англ. Database scheme) — её структура, описанная на формальном языке, поддерживаемом системой управления базами данных (СУБД). Вреляционных базах данных схема определяет таблицы, поля в каждой таблице, а также отношения между полями и таблицами.
Схемы в общем случае хранятся в словаре данных. Хотя схема определена на языке базы данных в виде текста, термин часто используется для обозначения графического представления структуры базы данных. [1]
Основными объектами схемы являются таблицы и связи.
Аномалии модификации данных
После составления концептуальной (логической) схемы БД необходимо проверить её на отсутствие аномалий модификации данных. Дело в том, что при неправильно спроектированной схеме БД могут возникнуть аномалии выполнения операций модификации данных. Эти аномалии обусловлены ограниченностью структуры РМД (отсутствием агрегатов и проч.).
Рассмотрим эти аномалии на примере отношения со следующими атрибутами (атрибуты, входящие в ключ, выделены подчёркиванием):
ПОСТАВКИ (Номер поставки, Название товара, Цена товара, Количество, Дата поставки, Название поставщика, Адрес поставщика)
Различают три вида аномалий: аномалии обновления, удаления и добавления. Аномалия обновления может возникнуть в том случае, когда информация дублируется. Другие аномалии возникают тогда, когда две и более сущности объединены в одно отношение. Например:
Аномалия обновления: в отношении ПОСТАВКИ она может возникнуть, если у какого-либо поставщика изменился адрес. Изменения должны быть внесены во все кортежи, соответствующие поставкам этого поставщика; в противном случае данные будут противоречивы.
Аномалия удаления: при удалении записей обо всех поставках определённого поставщика все данные об этом поставщике будут утеряны.
Аномалия добавления: в нашем примере она возникнет, если с поставщиком заключен договор, но поставок от него ещё не было. Сведения о таком поставщике нельзя внести в таблицу ПОСТАВКИ, т.к. для него не определён ключ (номер поставки и название товара) и другие обязательные атрибуты.
Для решения проблемы аномалии модификации данных при проектировании реляционной БД проводится нормализация отношений.