Введение в модель данных SQL



         

Введение в модель данных SQL

В языке отсутствовали средства явной синхронизации доступа к объектам БД со стороны параллельно выполняемых транзакций: с самого начала предполагалось, что необходимую синхронизацию неявно выполняет СУБД.
В настоящее время язык SQL реализован во всех коммерческих реляционных СУБД и почти во всех СУБД, которые изначально основывались не на реляционном подходе. Все компании-производители провозглашают соответствие своей реализации стандарту SQL, и на самом деле реализованные диалекты SQL очень близки. Этого удалось добиться не сразу.
Наиболее близки к System R были две системы компании IBM – SQL/DS и DB22). Разработчики обеих систем использовали опыт проекта System R, а СУБД SQL/DS напрямую основывалась на программном коде System R. Отсюда предельная близость диалектов SQL, реализованных в этих системах, к SQL System R. Из SQL System R были удалены только те части, которые были недостаточно проработаны (например, точки сохранения) или реализация которых вызывала слишком большие технические трудности (например, ограничения целостности и триггеры). Можно назвать этот путь к коммерческой реализации SQL движением сверху вниз.

Внешние соединения
В предыдущих двух лекциях мы обсудили допускаемые в стандарте SQL виды ссылок на таблицы в разделе FROM оператора SELECT и подробно, с многочисленными примерами, рассмотрели возможные способы построения условных выражений раздела WHERE. Данную лекцию мы начинаем с анализа возможностей и целесообразности использования в запросах разделов GROUP BY и HAVING. Соответствующий раздел "Агрегатные функции, группировка и условия раздела HAVING" формально похож на раздел "Логические выражения раздела WHERE" лекции 14: обсуждаются виды предикатов, которые можно использовать в условных выражениях раздела HAVING, и приводятся иллюстрирующие примеры

Группировка и условия раздела HAVING
Семантика агрегатных функций
Семантика агрегатных функций - 2
Результаты запросов и агрегатные функции
Логические выражения раздела HAVING
Предикаты сравнения
Предикаты сравнения - 2
Предикаты сравнения - 3
Предикат between
Предикат null

Возможности формулирования аналитических запросов
Две темы, которым посвящается эта лекция, касаются сравнительно новых возможностей оператора SELECT языка SQL, впервые появившихся в стандарте SQL:1999 и открывающих возможность использования языка в приложениях, для которых ранее он не был приспособлен. Речь идет о возможностях аналитических и рекурсивных запросов. Эти темы логически не связаны, их объединяет лишь то, что соответствующие средства очень громоздки и не всегда легко понимаются. В данной краткой лекции мы не стремимся привести полное описание возможностей, специфицированных в стандарте SQL. Наша цель состоит лишь в том, чтобы в общих чертах описать подход SQL в указанных направлениях.

Раздел GROUP BY ROLLUP
Агрегатная функция GROUPING
Агрегатная функция GROUPING - 2
Раздел GROUP BY CUBE
Рекурсивные запросы
Определения, относящиеся к рекурсии
Рекурсивные запросы с разделом WITH
Рекурсивные запросы с разделом WITH - 2
Раздел SEARCH
Раздел CYRCLE

Базовые средства манипулирования данными
Базы данных, по крайней мере в приложениях категории OLTP, являются высоко динамичными объектами. В таких приложениях на две операции выборки данных в среднем приходится одна операция обновления содержимого базы данных (добавления новых данных, удаления или модификации существующих данных). Поэтому для пользователей и разработчиков OLTP-приложений средства манипулирования данными по важности находятся на втором месте после средств выборки данных.

Базовые средства манипулирования данными
Оператор INSERT для вставки строк
Вставка всех строк указанной таблицы
Вставка явно заданного набора строк
Вставка строк результата запроса
Триггеры и ссылочные действия
Заключение
Оператор UPDATE для модификации строк
Оператор DELETE для удаления строк
Представления - операции обновления

Поддержка авторизации доступа к данным в языке SQL
В этой лекции мы обсудим средства языка, которые касаются скорее администраторов баз данных, нежели конечных пользователей или программистов приложений. Но надо сказать, что любой квалифицированный пользователь SQL-ориентированной базы данных должен иметь представление об административных средствах SQL (тем более что средства управления транзакциями во многом затрагивают и его интересы).

Пользователи и роли
Применение идентификаторов пользователей
Создание и ликвидация ролей
Передача привилегий и ролей
Передача привилегий
Привилегии и представления
Передача ролей
Изменение текущих идентификаторов
Оператор SET SESSION AUTHORIZATION
Оператор SET ROLE

Истоки и краткая история объектно-реляционных баз данных
Как известно, язык SQL появился в середине 1970-х гг. при выполнении экспериментального проекта реляционной СУБД System R. Проект выполнялся в компании IBM, и это вполне естественно, потому что именно сотрудник IBM Эдгар Кодд предложил миру идею реляционных баз данных. От System R исходит большинство традиционных средств стандарта SQL:1999 (и SQL:2003), которые мы обсуждали в восьми предыдущих лекциях. Однако в этой лекции речь пойдет о возможностях современных вариантов SQL, которые не имеют отношения к System R (за исключением некоторых экспериментов по представлению сложных объектов средствами SQL) и, вообще говоря, к реляционной модели данных, а именно — о так называемых объектно-реляционных расширениях языка.

Первые ОРСУБД
Внедрение объектных расширений в РСУБД
Объектная модель SQL
Объектная модель SQL - 2
Цели лекции
Определяемые пользователями типы
Индивидуальные типы
Определение структурных типов
Определение атрибута структурного UDT
Определение атрибута структурного UDT - 2

Информатика и технология программирования
MathCAD
Матричные вычисления в Mathcad
Энциклопедия 3ds max 6
3DS MAX 7
Принципы организации IP-телефонии на базе решений Cisco Systems
Иллюстрированный самоучитель по введению в экспертные системы
Основы работы с системой MathCAD 7.0
Матричные вычисления в Mathcad
Бытовая радиоаппаратура и ее ремонт
Противостояние форматов DVD-R-RW и DVD+RW
Векторная графика в программе FreeHand
Active Directory для Windows Server 2003
Маурин Евгений - Возлюбленная Фаворита
Меррит Абрахам Грайс - Гори Ведьма Гори
Аппаратное обеспечение IBM PC
SW-CMM (Модель зрелости процессов разработки ПО)
Компьютерные сети Принципы, технологии, протоколы
Методы и средства инженерии программного обеспечения
Мельников Руслан - Тайный Рыцарь