Новые книги

В книге прослеживается история и эволюция компьютерного мира, которую можно условно разделить на несколько периодов: период, предшествующий компьютерной эпохе; период создания первых компьютеров и появления первых языков программирования; период становления и развития компьютерной индустрии, возникновения компьютерных систем и сетей; период создания объектно-ориентированных языков программирования и новых компьютерных технологий. Каждая из глав книги посвящена отдельному периоду, изобретателям, конструкторам и программистам — архитекторам компьютерного мира.

Для широкого круга читателей
Данный текст является переводом на русский язык описания одного из самых популярных стандартов постановки процесса разработки программного обеспечения (ПО).

Я публикую книгу на своем сайте в открытом доступе для того, чтобы все интересующиеся данным вопросом могли прочитать ее и получить необходимую информацию совершенно свободно и бесплатно. Причина в том, что те методики, которые описаны в данном стандарте, как я считаю, просто обязаны взять на вооружение те разработчики ПО, которые этим занимаются серьёзно. По крайней мере, это касается 2-го и 3-го уровней CMM, так как применение этих практик дает существенное повышение в производительности и устойчивости процесса разработки ПО.

Оглавление

Структуризированный язык запросов (SQL)
Учебное пособие

Предисловие
Глава 1. Реляционные базы данных и язык SQL
    1.1. Реляционная база данных
    1.2. Почему SQL?
    1.3. Таблицы SQL
Глава 2. Запросы с использованием единственной таблицы
    2.1. О предложении SELECT
    2.2. Выборка без использования фразы WHERE
        2.2.1. Простая выборка
        2.2.2. Исключение дубликатов
        2.2.3. Выборка вычисляемых значений
    2.3. Выборка c использованием фразы WHERE
        2.3.1. Использование операторов сравнения
        2.3.2. Использование BETWEEN
        2.3.3. Использование IN
        2.3.4. Использование LIKE
        2.3.5. Вовлечение неопределенного значения
    2.4. Выборка с упорядочением
    2.5. Агрегирование данных
        2.5.1. SQL-функции
        2.5.2. Функции без использования фразы GROUP BY
        2.5.3. Фраза GROUP BY
        2.5.4. Использование фразы HAVING
Глава 3. Запросы с использованием нескольких таблиц
    3.1. О средствах одновременной работы с множеством таблиц
    3.2. Запросы, использующие соединения
        3.2.1. Декартово произведение таблиц
        3.2.2. Эквисоединение таблиц
        3.2.3. Естественное соединение таблиц
        3.2.4. Композиция таблиц
        3.2.5. Тета-соединение таблиц
        3.2.6. Соединение таблиц с дополнительным условием
        3.2.7. Соединение таблицы со своей копией
    3.3. Вложенные подзапросы
        3.3.1. Виды вложенных подзапросов
        3.3.2. Простые вложенные подзапросы
        3.3.3. Использование одной и той же таблицы во внешнем и вложенном подзапросе
        3.3.4. Вложенный подзапрос с оператором сравнения, отличным от IN
        3.3.5. Коррелированные вложенные подзапросы
        3.3.6. Запросы, использующие EXISTS
        3.3.7. Функции в подзапросе
    3.4. Объединение (UNION)
    3.5. Реализация операций реляционной алгебры предложением SELECT
    3.6. Резюме
Глава 4. Предложения модификации данных SQL
    4.1. Особенности и синтаксис предложений модификации
    4.2. Предложение DELETE
        4.2.1. Удаление единственной записи
        4.2.2. Удаление множества записей
        4.2.3. Удаление с вложенным подзапросом
    4.3. Предложение INSERT
        4.3.1. Вставка единственной записи в таблицу
        4.3.2. Вставка множества записей
        4.3.3. Использование INSERT...SELECT для построения внешнего соединения
    4.4. Предложение UPDATE
        4.4.1. Обновление единственной записи
        4.4.2. Обновление множества записей
        4.4.3. Обновление с подзапросом
        4.4.4. Обновление нескольких таблиц
    4.5. О конструировании предложений модификации
Глава 5. О предложениях определения данных и оптимизации запросов
    5.1. Системный каталог
    5.2. Создание и уничтожение базовых таблиц
    5.3. О индексах и производительности
    5.4. Представления
        5.4.1. Создание и уничтожение представлений
        5.4.2. Операции выборки из представлений
        5.4.3. Обновление представлений
        5.4.4. Для чего нужны представления
Глава 6. О других предложениях и конструкциях SQL
    6.1. Безопасность и санкционирование доступа
    6.2. Обработка транзакций
    6.3. Прикладное программирование
Литература