Как работает подзапрос?
Значения, которые подзапрос может выводить
DISTINCT с подзапросами
Предикаты с подзапросами
являются необратимыми
Использование агрегатных функций в подзапросах
Использование подзапросов,
которые выдают много строк с помощью оператора IN
Подзапросы в предложении HAVING
Резюме
Работа со SQL
Специальные операторы ANY или SOME
Использование IN или EXISTS вместо ANY
Как ANY может стать неоднозначным?
Специальный оператор ALL
Равенства и неравенства
Правильное
понимание ANY и ALL
Как ANY, ALL и EXISTS поступают с отсутствующими и
неизвестными данными?
Когда подзапрос
возвращается пустым?
ANY и ALL вместо EXISTS с NULL
Использование COUNT вместо EXISTS
Резюме
Работа со SQL
Команды модификации языка DML
Ввод значений
Вставка NULL
Именование
столбца для вставки
Вставка результатов запроса
Удаление строк из таблиц
Изменение значений поля
Модифицирование только определенных строк
Команда UPDATE для нескольких столбцов
Использование выражений
для модификации
МодифицированиеNULL-значений
Резюме
Работа со SQL
Внешний ключ и родительский ключ
Многостолбцовые внешние ключи
Смысл внешнего и родительского ключей
Ограничение внешнего ключа
Как можно представить поля в качестве внешних ключей
Внешний ключ как ограничение таблицы
Внешний ключ как ограничение столбцов
Не указывать список столбцов первичных ключей
Как справочная целостность ограничивает значение
родительского ключа?
Первичный ключ как
уникальный внешний ключ
Ограничения внешнего ключа
Что случится,
если вы выполните команду модификации?
Описание ограничений таблицы
Действия ограничений
Внешние ключи, которые ссылаются обратно на свои
подчинённые таблицы
Резюме
Работа со SQL
Что такое представление?
Команда CREATE VIEW
Модифицирование представлений
Именование столбцов
Комбинирование предикатов представлений и основных запросов
в представлениях
Групповые представления
Представления и объединения
Представления и подзапросы
Что не могут делать
представления?
Удаление представлений
Резюме
Работа со SQL
Модифицирование представления
Определение модифицируемости представления
Модифицируемые представления и представления
ТОЛЬКО_ДЛЯ_ЧТЕНИЯ
Какое представление является
модифицируемым?
Проверка значений, помещаемых в представление
Предикаты и исключённые поля
Проверка представлений, которые базируются на других представлениях
Резюме
Работа со SQL
Пользователи
Регистрация
Предоставление привилегий
Стандартные привилегии
Команда GRANT
Использование аргументов ALL и PUBLIC
Передача прав с помощью WITH GRANT OPTION
Отмена привилегий
Использование представлений для фильтрации привилегии
Другие виды привилегий
Типичные привилегии системы
Создание и удаление пользователей
Резюме
Работа со SQL
Переименование таблиц
Переименование с тем же
самым именем
Одно имя для каждого
Удаление синонимов
Как база данных распределена между пользователями?
Когда сделанные изменения становятся постоянными?
Как SQL общается сразу с несколькими пользователями?
Типы блокировок
Другие способы блокировки данных
Резюме
Работа со SQL
Каталог системы
Типичный каталог системы
Использование представлений в таблицах каталога
Комментарий
в содержании каталога
Остальное содержимое каталога
SYSTENINDEXES - индексация в базе данных
SYSTEMUSERAUTH - пользовательские исистемные
привилегии в базе данных
SYSTEMTABAUTH - привилегии объекта, которые не
определяют авторизацию столбца
SYSTEMCOLAUTH - привилегии объекта, которые определяют
авторизацию столбца
SYSTEMSYNONS - синонимы для таблиц базе данных
Другое использование каталога
Резюме
Работа со SQL
Что такое - вложение SQL?
Зачем вкладывать SQL?
Как делается вложение SQL?
Использование переменных основного языка со SQL
Объявление переменных
Извлечение значений в переменных
Курсор
SQLCODE
Использование SQLCODE для управления циклами
Предложение WHENEVER
Модифицирование курсоров
Переменная INDICATOR
Использование переменной INDICATOR для эмуляции NULL-значений
SQL
Другое использование переменной INDICATOR
Резюме
Работа со SQL