- •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 документу.
28.Ізоляція транзакцій. Визначення графіку виконання та правильного графіку виконання транзакції. Уровни изоляции транзакций
Стандарт ANSI/ISO для SQL устанавливает различные уровни изоляции для операций, выполняемых над БД, которые работают в многопользовательском режиме. Уровень изоляции определяет, может ли читающая транзакция считывать ("видеть") результаты работы других одновременно выполняемых завершённых и/или незавершённых пишущих транзакций (табл. 5.1). Использование уровней изоляции обеспечивает предсказуемость работы приложений.
Таблица 5.1. Уровни изоляции по стандарту ANSI / ISO
Уровень изоляции |
Черновое чтение |
Неповторяемое чтение |
Фантомы |
Read Uncommited – чтение незавершённых транзакций |
да |
да |
да |
Read Commited – чтение завершённых транзакций |
нет |
да |
да |
Repeatable Read – повторяемое чтение |
нет |
нет |
да |
Serializable – последовательное чтение |
нет |
нет |
нет |
По умолчанию в СУБД обычно установлен уровень Read Commited.
Уровень изоляции позволяет транзакциям в большей или меньшей степени влиять друг на друга: при повышении уровня изоляции повышается согласованность данных, но снижается степень параллельности работы и, следовательно, производительность системы.
29.Ізоляція транзакцій. Рівні ізоляції та управління рівнем ізоляції транзакції в sql сервері. Уровни изоляции
Стандарт SQL не предусматривает понятие блокировок для реализации сериализуемости смеси транзакций. Вместо этого вводится понятие уровней изоляции. Этот подход обеспечивает необходимые требования к изолированности транзакций, оставляя возможность производителям различных СУБД реализовывать эти требования своими способами (в частности, с использованием блокировок или выделением версий данных).
Стандарт SQL предусматривает 4 уровня изоляции:
READ UNCOMMITTED - уровень незавершенного считывания.
READ COMMITTED - уровень завершенного считывания.
REPEATABLE READ - уровень повторяемого считывания.
SERIALIZABLE - уровень способности к упорядочению.
Если все транзакции выполняются на уровне способности к упорядочению (принятом по умолчанию), то чередующееся выполнение любого множества параллельных транзакций может быть упорядочено. Если некоторые транзакции выполняются на более низких уровнях, то имеется множество способов нарушить способность к упорядочению. В стандарте SQL выделены три особых случая нарушения способности к упорядочению, фактически именно те, которые были описаны выше как проблемы параллелизма:
Неаккуратное считывание ("Грязное" чтение, незафиксированная зависимость).
Неповторяемое считывание (Частный случай несовместного анализа).
Фантомы (Фиктивные элементы - частный случай несовместного анализа).
Потеря результатов обновления стандартом SQL не допускается, т.е. на самом низком уровне изолированности транзакции должны работать так, чтобы не допустить потери результатов обновления.
Различные уровни изоляции определяются по возможности или исключению этих особых случаев нарушения способности к упорядочению. Эти определения описываются следующей таблицей:
Уровень изоляции |
Неаккуратное считывание |
Неповторяемое считывание |
Фантомы |
READ UNCOMMITTED |
Да |
Да |
Да |
READ COMMITTED |
Нет |
Да |
Да |
REPEATABLE READ |
Нет |
Нет |
Да |
SERIALIZABLE |
Нет |
Нет |
Нет |
Таблица 4 Уровни изоляции стандарта SQL