SQL для чайников

Аллен Г. Тейлор

Эта книга предназначена для тех, кто хочет повысить свой уровень работы с базами данных с помощью языка структурированных запросов - SQL. Вы освоите основы реляционных баз данных и языка SQL, научитесь проектировать базы данных, заполнять их информацией и извлекать ее, используя расширенные возможности языка. Отдельные части книги посвящены вопросам защиты информации в базах данных и обработки ошибок.

Даже если вам никогда не приходилось ранее разрабатывать системы хранения данных, эта книга поможет при работе с информацией использовать самые современные технологии.

Издательство: Диалектика, Вильямс, 2010 г.

ISBN 978-5-8459-1673-0, 978-0-470-55741-9

Количество страниц: 416.

Содержание книги «SQL для чайников»:

  • 17 Об авторе
  • 17 Посвящение
  • 17 Благодарности
  • 18 Введение
    • 18 Об этой книге
    • 18 Для кого предназначена книга
    • 19 Структура книги
      • 19 Часть I. Основные понятия
      • 19 Часть II. Использование SQL для создания баз данных
      • 19 Часть III. Хранение и извлечение данных
      • 19 Часть IV. Операции управления
      • 20 Часть V. SQL на практике
      • 20 Часть VI. Расширенные возможности
      • 20 Часть VII. Великолепные десятки
    • 20 Приложение и словарь
    • 20 Пиктограммы, используемые в книге
    • 21 Начнем
    • 22 Ждем ваших отзывов!
  • 23 ЧАСТЬ I. ОСНОВНЫЕ ПОНЯТИЯ
  • 25 Глава 1. Основы реляционных баз данных
    • 25 Работа с данными
    • 26 Что такое база данных
    • 27 Размер и сложность базы данных
    • 27 Что такое система управления базами данных
    • 28 Плоские файлы
    • 30 Модели баз данных
      • 30 Реляционная модель
      • 31 Почему реляционная модель лучше
      • 31 Компоненты реляционной базы данных
      • 31 На праздники семьи собираются вместе
      • 33 Оцените представление
      • 36 Схемы, домены и ограничения
      • 37 Объектная модель бросает вызов реляционной
      • 37 Объектно-реляционная модель
    • 38 Соображения по поводу проектирования баз данных
  • 39 Глава 2. Основы SQL
    • 39 Чем является SQL и чем он не является
    • 41 Немного истории
    • 42 Операторы SQL
    • 43 Зарезервированные слова
    • 43 Типы данных
      • 44 Точные числовые типы
      • 46 Приближенные числовые типы
      • 47 Символьные строки
      • 49 Двоичные строки
      • 50 Логические данные
      • 50 Данные типа даты-времени
      • 52 Интервалы
      • 52 Тип XML
      • 54 Тип ROW
      • 54 Типы коллекций
      • 56 Типы REF
      • 56 Определяемые пользователем типы
      • 59 Свод типов данных
    • 60 Пустые значения
    • 60 Ограничения
    • 61 Использование SQL в архитектуре «клиент/сервер»
      • 61 Сервер
      • 62 Клиент
    • 63 Использование SQL в Интернете и локальных сетях
  • 65 Глава 3. Компоненты SQL
    • 65 Язык определения данных
      • 66 Когда «Просто сделай это!» не лучший совет
      • 67 Создание таблиц
      • 68 Комната с представлениями
      • 74 Сборка таблиц в схемы
      • 74 Заказ по каталогу
      • 75 Операторы DDL
    • 77 Язык манипулирования данными
      • 77 Выражения со значениями
      • 80 Предикаты
      • 81 Логические связки
      • 81 Итоговые функции
      • 83 Подзапросы
    • 83 Язык управления данными
      • 83 Транзакции
      • 84 Пользователи и полномочия
      • 87 Ограничения ссылочной целостности угрожают вашим данным
      • 88 Делегирование ответственности за безопасность
  • 91 ЧАСТЬ II. ИСПОЛЬЗОВАНИЕ SQL ДЛЯ СОЗДАНИЯ БАЗ ДАННЫХ
  • 93 Глава 4. Создание и обслуживание простой базы данных
    • 94 Создание простой базы данных с помощью инструмента RAD
      • 94 Правдоподобный сценарий
      • 95 Создание таблицы в режиме конструктора
      • 102 Изменение структуры таблицы
      • 103 Создание индекса
      • 106 Удаление таблицы
    • 107 Создание таблицы POWER с помощью DDL
      • 108 Использование языка SQL с приложением Microsoft Access
      • 110 Создание таблицы
      • 113 Создание индекса
      • 114 Изменение структуры таблицы
      • 114 Удаление таблицы
      • 114 Удаление индекса
    • 115 Переносимость
  • 116 Глава 5. Создание многотабличной реляционной базы данных
    • 116 Проектирование базы данных
      • 116 Действие 1: определение объектов
      • 117 Действие 2: определение таблиц и столбцов
      • 118 Действие 3: точное определение таблиц
      • 121 Домены, символьные наборы, сопоставления и трансляции
      • 122 Ускорение работы базы данных с помощью ключей
    • 124 Работа с индексами
      • 124 Что такое индекс
      • 125 Зачем нужен индекс
      • 126 Поддержка индекса
    • 127 Обеспечение целостности данных
      • 127 Сущностная целостность
      • 128 Доменная целостность
      • 129 Ссылочная целостность
      • 132 Когда вы думаете, что все хорошо
      • 132 Потенциальные проблемные области
      • 134 Ограничения
    • 136 Нормализация базы данных
      • 137 Аномалии изменения и нормальные формы
      • 139 Первая нормальная форма
      • 140 Вторая нормальная форма
      • 141 Третья нормальная форма
      • 142 Доменно-ключевая нормальная форма (ДКНФ)
      • 143 Ненормальная форма
  • 145 ЧАСТЬ III. ХРАНЕНИЕ И ИЗВЛЕЧЕНИЕ ДАННЫХ
  • 147 Глава 6. Манипуляция данными из базы
    • 147 Извлечение данных
    • 149 Создание представлений
      • 150 Создание представлений из таблиц
      • 151 Создание представления с условием выборки
      • 151 Создание представления с модифицированным атрибутом
    • 153 Обновление представлений
    • 153 Добавление новых данных
      • 154 Добавление данных в виде отдельных записей
      • 155 Добавление данных только в выбранные столбцы
      • 155 Добавление в таблицу группы строк
    • 158 Обновление существующих данных
    • 160 Перемещение данных
    • 162 Удаление устаревших данных
  • 163 Глава 7. Определение значений
    • 163 Значения
      • 164 Значения типа записи
      • 164 Литеральные значения
      • 165 Переменные
      • 167 Специальные переменные
      • 168 Ссылки на столбцы
    • 169 Выражения со значением
      • 170 Строковые выражения со значением
      • 170 Числовые выражения со значением
      • 171 Выражения со значением даты-времени
      • 171 Интервальные выражения со значением
      • 172 Условные выражения со значением
    • 172 Функции
      • 172 Суммирование с помощью итоговых функций
      • 174 Функции значения
  • 186 Глава 8. Сложные выражения со значением
    • 186 Условные выражения CASE
      • 187 Использование выражения CASE с условиями поиска
      • 189 Использование выражения CASE со значениями
      • 191 Специальное выражение CASE — NULLIF
      • 192 Еще одно специальное выражение CASE — COALESCE
    • 193 Преобразование типов данных с помощью выражения CAST
      • 194 Использование выражения CAST в коде SQL
      • 195 Использование выражения CAST при взаимодействии SQL и базового языка
    • 195 Выражения со значением типа записи
  • 198 Глава 9. «Пристрелка» к нужным данным
    • 198 Уточняющие предложения
    • 200 Предложение FROM
    • 200 Предложение WHERE
      • 201 Предикаты сравнения
      • 202 Предикат BETWEEN
      • 203 Предикаты IN и NOT IN
      • 204 Предикаты LIKE и NOT LIKE
      • 206 Предикат SIMILAR
      • 206 Предикат NULL
      • 207 Предикаты ALL, SOME и ANY
      • 209 Предикат EXISTS
      • 210 Предикат UNIQUE
      • 210 Предикат DISTINCT
      • 211 Предикат OVERLAPS
      • 211 Предикат MATCH
      • 213 Правила ссылочной целостности и предикат MATCH
    • 215 Логические связки
      • 216 Логическая связка AND
      • 216 Логическая связка OR
      • 217 Логическая связка NOT
    • 217 Предложение GROUP BY
    • 219 Предложение HAVING
    • 219 Предложения ORDER BY
  • 222 Глава 10. Реляционные операторы
    • 222 Оператор UNION
      • 224 Операция UNION ALL
      • 224 Операция CORRESPONDING
    • 225 Оператор INTERSECT
    • 227 Оператор EXCEPT
    • 227 Операторы объединения
      • 228 Простое объединение
      • 229 Объединение, основанное на равенстве
      • 231 Перекрестное объединение
      • 232 Естественное объединение
      • 232 Условное объединение
      • 233 Объединение по именам столбцов
      • 234 Внутреннее объединение
      • 234 Внешнее объединение
      • 238 Объединение слияния
    • 243 Предложения ON и WHERE
  • 244 Глава 11. Использование вложенных запросов
    • 245 В чем задача подзапросов
      • 246 Вложенные подзапросы, которые возвращают наборы строк
      • 249 Вложенные запросы, возвращающие одно значение
      • 252 Кванторы ALL, SOME и ANY
      • 253 Вложенные запросы, являющиеся проверкой на существование
      • 255 Прочие коррелированные подзапросы
      • 258 Инструкции UPDATE, DELETE и INSERT
  • 262 Глава 12. Рекурсивные запросы
    • 262 Что такое рекурсия
      • 263 Хьюстон, у нас проблемы
      • 263 Сбой недопустим
    • 265 Что такое рекурсивный запрос
    • 265 Где можно использовать рекурсивный запрос
      • 266 Трудным путем
      • 267 Экономия времени с помощью рекурсивного запроса
    • 269 Где еще можно использовать рекурсивные запросы
  • 271 ЧАСТЬ IV. ОПЕРАЦИИ УПРАВЛЕНИЯ
  • 273 Глава 13. Обеспечение безопасности базы данных
    • 273 Язык управления данными
    • 274 Уровни доступа пользователей
      • 274 Администратор базы данных
      • 275 Владельцы объектов базы данных
      • 275 Понятие публичности
    • 276 Предоставление полномочий пользователям
      • 277 Роли
      • 278 Вставка данных
      • 278 Просмотр данных
      • 279 Модификация табличных данных
      • 279 Удаление из таблицы устаревших строк
      • 279 Ссылки для таблиц, связанных друг с другом
      • 280 Использование доменов, наборов символов, сопоставлений и трансляций
      • 282 Инициирование выполнения инструкций SQL
    • 283 Предоставление полномочий через уровни
    • 284 Право на предоставление полномочий
    • 285 Отзыв полномочий
    • 286 Экономия времени и сил благодаря совместному использованию инструкций GRANT и REVOKE
  • 288 Глава 14. Защита данных
    • 288 Угрозы целостности данных
      • 289 Нестабильность платформы
      • 289 Аппаратный сбой
      • 290 Одновременный доступ
    • 292 Уменьшение уязвимости данных
      • 293 Использование транзакций SQL
      • 294 Транзакция по умолчанию
      • 295 Уровни изоляции
      • 297 Неявный оператор начала транзакции
      • 297 Инструкция SET TRANSACTION
      • 298 Инструкция COMMIT
      • 298 Инструкция ROLLBACK
      • 298 Блокирование объектов базы данных
      • 299 Резервное копирование
      • 299 Точки отката и субтранзакции
    • 301 Ограничения в транзакциях
  • 305 Глава 15. Использование SQL в приложениях
    • 305 SQL в приложении
      • 306 Следите за звездочкой
      • 306 Сильные и слабые стороны SQL
      • 307 Сильные и слабые стороны процедурных языков
      • 307 Проблемы, возникающие при совместном использовании SQL с процедурными языками
    • 308 Вставка инструкций SQL в процедурные языки
      • 308 Внедрение кода SQL
      • 311 Модульный язык
      • 313 Объектно-ориентированные инструменты RAD
      • 314 Использование SQL в приложении Microsoft Access
  • 317 ЧАСТЬ V. SQL НА ПРАКТИКЕ
  • 319 Глава 16. Доступ к данным с помощью ODBC и JDBC
    • 319 ODBC
      • 320 Интерфейс ODBC
      • 320 Компоненты ODBC
    • 321 ODBC в среде «клиент/сервер»
    • 322 ODBC и Интернет
      • 323 Серверные расширения
      • 323 Клиентские расширения
    • 324 ODBC и интранет
    • 325 JDBC
  • 327 Глава 17. Работа с данными XML
    • 327 Как XML соотносится с SQL
    • 328 Тип данных XML
      • 328 Когда используется тип XML
      • 329 Когда не стоит использовать тип XML
    • 330 Преобразование данных из формата SQL в формат XML и наоборот
      • 330 Преобразование наборов символов
      • 330 Преобразование идентификаторов
      • 331 Преобразование типов данных
      • 331 Преобразование таблиц
      • 332 Обработка пустых значений
      • 333 Создание схемы XML
    • 334 Функции SQL, оперирующие данными XML
      • 334 Функция XMLDOCUMENT
      • 334 Функция XMLELEMENT
      • 334 Функция XMLFOREST
      • 335 Функция XMLCONCAT
      • 335 Функция XMLAGG
      • 336 Функция XMLCOMMENT
      • 336 Функция XMLPARSE
      • 336 Функция XMLPI
      • 337 Функция XMLQUERY
      • 337 Функция XMLCAST
    • 337 Предикаты
      • 338 Предикат DOCUMENT
      • 338 Предикат CONTENT
      • 338 Предикат XMLEXISTS
      • 338 Предикат VALID
    • 339 Преобразования данных XML в таблицы SQL
    • 340 Преобразование не предопределенных типов данных в XML
      • 340 Домены
      • 341 Отдельные типы UDT
      • 342 Запись
      • 343 Массивы
      • 344 Мультимножества
    • 344 Содружество SQL и XML
  • 345 ЧАСТЬ VI. РАСШИРЕННЫЕ ВОЗМОЖНОСТИ
  • 347 Глава 18. Работа с наборами данных с помощью курсоров
    • 348 Объявление курсора
      • 348 Выражение запроса
      • 349 Предложение ORDER BY
      • 350 Разрешение обновления
      • 351 Чувствительность
      • 352 Перемещаемость
    • 352 Открытие курсора
    • 353 Выборка данных из отдельных строк
      • 353 Синтаксис
      • 354 Ориентация перемещаемого курсора
      • 354 Позиционные инструкции DELETE и UPDATE
    • 355 Закрытие курсора
  • 356 Глава 19. Возможности процедурного программирования
    • 356 Составные инструкции
      • 357 Атомарность
      • 358 Переменные
      • 358 Курсоры
      • 359 Состояния
      • 359 Обработка состояний
      • 361 Необрабатываемые состояния
      • 362 Присвоение
    • 362 Операторы управления потоком команд
      • 362 Оператор IF...THEN...ELSE...END IF
      • 363 Оператор CASE...END CASE
      • 364 Оператор LOOP...END LOOP
      • 364 Оператор LEAVE
      • 365 Оператор WHILE...DO...END WHILE
      • 365 Оператор REPEAT...UNTIL...END REPEAT
      • 365 Оператор FOR...DO...END FOR
      • 366 Оператор ITERATE
    • 366 Хранимые процедуры
    • 367 Хранимые функции
    • 368 Полномочия
    • 368 Хранимые модули
  • 370 Глава 20. Обработка ошибок
    • 370 Параметр SQLSTATE
    • 372 Предложение WHENEVER
    • 372 Области диагностики
      • 373 Заголовок области диагностики
      • 374 Информационная область диагностики
      • 376 Пример нарушения ограничения
      • 377 Ввод новых ограничений в уже созданную таблицу
      • 378 Интерпретация информации, возвращаемой параметром SQLSTATE
    • 378 Обработка исключений
  • 380 Глава 21. Триггеры
    • 380 Некоторые случаи применения триггеров
    • 381 Создание триггера
      • 381 Триггеры операторов и строк
      • 382 Когда срабатывает триггер
      • 382 Вызванный оператор SQL
      • 382 Пример определения триггера
    • 382 Срабатывание последовательности триггеров
    • 383 Ссылки на старые и новые значения
    • 384 Срабатывание нескольких триггеров в одной таблице
  • 385 ЧАСТЬ VII. ВЕЛИКОЛЕПНЫЕ ДЕСЯТКИ
  • 387 Глава 22. Десять самых распространенных ошибок
    • 387 Уверенность, что клиенты знают, чего хотят
    • 388 Игнорирование масштабов проекта
    • 388 Учет только технических факторов
    • 388 Отсутствие обратной связи с клиентами
    • 389 Использование только своей любимой среды разработки
    • 389 Использование только своей любимой системной архитектуры
    • 389 Проектирование таблиц баз данных отдельно друг от друга
    • 390 Отказ от консультаций с другими специалистами
    • 390 Игнорирование бета-тестирования
    • 390 Отказ от создания документации
  • 391 Глава 23. Десять советов по извлечению данных
    • 391 Проверяйте структуру базы данных
    • 392 Испытывайте запросы на проверочной базе данных
    • 392 Дважды проверяйте запросы, имеющие операторы JOIN
    • 392 Трижды проверяйте запросы с подвыборками
    • 392 Подводите итоги, используя предложение GROUP BY
    • 393 Внимательно относитесь к ограничениям из предложения GROUP BY
    • 393 Используйте круглые скобки с ключевыми словами AND, OR и NOT
    • 394 Контролируйте полномочия на получение данных
    • 394 Регулярно выполняйте резервное копирование своих баз данных
    • 394 Тщательно обрабатывайте ошибочные состояния
  • 395 Приложение. Зарезервированные слова SQL:2008
  • 398 Призовая глава. Словарь терминов
  • 405 Предметный указатель

Инструкция как скачать книгу Аллен Г. Тейлор: SQL для чайников в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
SQL для чайников
Рейтинг книги:
8 голосов
2067

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: