Базы данных. Вводный курс
Примеры запросов с использованием предиката match
Предикат match
Примеры запросов с использованием предиката match
Предикат is distinct
Внешние соединения
Агрегатные функции, группировка и условия раздела HAVING
Семантика агрегатных функций
Результаты запросов и агрегатные функции
Логические выражения раздела HAVING
Предикаты сравнения
Предикат null
Предикаты сравнения с квантором
Предикат distinct
Ссылки на порождаемые таблицы в разделе FROM
Еще один способ формулировки запросов
Случаи, в которых без порождаемых таблиц обойтись невозможно
Более сложные конструкции оператора выборки
Соединенные таблицы
Формальные определения
Примеры соединений разного вида
Примеры запросов с использованием соединенных таблиц
Порождаемые таблицы с горизонтальной связью (lateral_derived_table)
Возможности формулирования аналитических запросов
Раздел GROUP BY ROLLUP
Агрегатная функция GROUPING
Раздел GROUP BY CUBE
Рекурсивные запросы
Определения, относящиеся к рекурсии
Рекурсивные запросы с разделом WITH
Раздел SEARCH
Раздел CYRCLE
Рекурсивные представления
Базовые средства манипулирования данными
Оператор INSERT для вставки строк в существующие таблицы
Вставка всех строк указанной таблицы
Вставка явно заданного набора строк
Вставка строк результата запроса
Оператор UPDATE для модификации существующих строк в существующих таблицах
Оператор DELETE для удаления строк в существующих таблицах
Представления, над которыми возможны операции обновления
Представления, допускающие применение операций обновления, в стандарте SQL/92
Критерии применимости операций обновления
Правила функциональных зависимостей
Раздел WITH CHECK OPTION определения представления
Режимы проверки CASCADED и LOCAL
Исторический очерк
Операции обновления баз данных и механизм триггеров
Понятие триггера в SQL:1999
Синтаксис определения триггеров и типы триггеров
Триггеры BEFORE и AFTER
Триггеры INSERT, UPDATE и DELETE
Триггеры ROW и STATEMENT
Раздел WHEN
Тело триггера
Выполнение триггеров
Возможности использования старых и новых значений
Обработка нескольких триггеров, связанных с одной предметной таблицей
Триггеры и ссылочные действия
Поддержка авторизации доступа к данным в языке SQL
Пользователи и роли
Применение идентификаторов пользователей и имен ролей
Создание и ликвидация ролей
Передача привилегий и ролей
Передача привилегий
Привилегии и представления
Передача ролей
Изменение текущих идентификаторов пользователей и имен ролей
Оператор SET SESSION AUTHORIZATION
Оператор SET ROLE
Аннулирование привилегий и ролей
Аннулирование привилегий
Аннулирование ролей
Управление транзакциями в SQL
ACID-транзакция
Порождение транзакций в SQL:1999
Установка характеристик транзакции
Установка характеристик транзакции - 2
Явная инициация транзакции
Уровни изоляции SQL-транзакции
Феномен «грязного» чтения (dirty read)
Феномен неповторяемого чтения (unrepeatable read)
Феномен фантомов
Завершение транзакций
Транзакции и ограничения целостности
Точки сохранения
Подключения и сессии
Установление соединений
Операторы SQL для управления соединениями
Оператор CONNECT
Оператор SET CONNECTION
Оператор DISCONNECT
Истоки и краткая история объектно-реляционных баз данных
Первые ОРСУБД
Внедрение объектных расширений в основные РСУБД
Объектная модель SQL
Цели лекции
Определяемые пользователями типы
Индивидуальные типы
Содержание раздела