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