2-е издание. — М.: Интуит, 2016. — 350c.
Язык SQL появился в 1974 г. при выполнении исследовательского
проекта System R компании IBM. Тогда и долгое время спустя
считалось, что язык SQL является практической реализацией идей
реляционной модели данных, а многие пользователи языка и сегодня
придерживаются того же мнения. Однако в действительности эта точка
зрения является неправильной, а данный курс направлен на то, чтобы
обеспечить правильное понимание модели данных языка SQL.
Следуя общим принципам определения модели данных, в первых двух лекциях курса мы описываем основные понятия структурной части модели данных SQL – типы данных и средства определения базовых таблиц. В этих же лекциях рассматривается целостная часть модели: средства определения целостности на уровне доменов, столбцов, таблиц и баз данных в целом. Следующие четыре лекции посвящены обсуждению различных аспектов манипуляционной части модели данных SQL, которая существенно сложнее традиционных алгебраических и логических механизмов реляционной модели данных. В лекции 7 рассматриваются средства языка SQL, предназначенные для обновления содержимого существующих баз данных, а также механизм определения и функционирования триггеров. Восьмая лекция посвящена обсуждению средств авторизации доступа, управления транзакциями, сессиями и подключениями. Наконец, завершающая курс лекция 9 содержит описание так называемых «объектных» расширений языка SQL, сближающих синтаксис языка с синтаксисом языковых средств объектно-ориентированных СУБД и еще более отдаляющих модель языка SQL от реляционной модели данных.
Следуя общим принципам определения модели данных, в первых двух лекциях курса мы описываем основные понятия структурной части модели данных SQL – типы данных и средства определения базовых таблиц. В этих же лекциях рассматривается целостная часть модели: средства определения целостности на уровне доменов, столбцов, таблиц и баз данных в целом. Следующие четыре лекции посвящены обсуждению различных аспектов манипуляционной части модели данных SQL, которая существенно сложнее традиционных алгебраических и логических механизмов реляционной модели данных. В лекции 7 рассматриваются средства языка SQL, предназначенные для обновления содержимого существующих баз данных, а также механизм определения и функционирования триггеров. Восьмая лекция посвящена обсуждению средств авторизации доступа, управления транзакциями, сессиями и подключениями. Наконец, завершающая курс лекция 9 содержит описание так называемых «объектных» расширений языка SQL, сближающих синтаксис языка с синтаксисом языковых средств объектно-ориентированных СУБД и еще более отдаляющих модель языка SQL от реляционной модели данных.