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 Делегирование ответственности за безопасность
- 65 Язык определения данных
- 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 Переносимость
- 94 Создание простой базы данных с помощью инструмента RAD
- 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 Ненормальная форма
- 116 Проектирование базы данных
- 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 Функции значения
- 163 Значения
- 186 Глава 8. Сложные выражения со значением
- 186 Условные выражения CASE
- 187 Использование выражения CASE с условиями поиска
- 189 Использование выражения CASE со значениями
- 191 Специальное выражение CASE — NULLIF
- 192 Еще одно специальное выражение CASE — COALESCE
- 193 Преобразование типов данных с помощью выражения CAST
- 194 Использование выражения CAST в коде SQL
- 195 Использование выражения CAST при взаимодействии SQL и базового языка
- 195 Выражения со значением типа записи
- 186 Условные выражения CASE
- 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
- 222 Оператор UNION
- 244 Глава 11. Использование вложенных запросов
- 245 В чем задача подзапросов
- 246 Вложенные подзапросы, которые возвращают наборы строк
- 249 Вложенные запросы, возвращающие одно значение
- 252 Кванторы ALL, SOME и ANY
- 253 Вложенные запросы, являющиеся проверкой на существование
- 255 Прочие коррелированные подзапросы
- 258 Инструкции UPDATE, DELETE и INSERT
- 245 В чем задача подзапросов
- 262 Глава 12. Рекурсивные запросы
- 262 Что такое рекурсия
- 263 Хьюстон, у нас проблемы
- 263 Сбой недопустим
- 265 Что такое рекурсивный запрос
- 265 Где можно использовать рекурсивный запрос
- 266 Трудным путем
- 267 Экономия времени с помощью рекурсивного запроса
- 269 Где еще можно использовать рекурсивные запросы
- 262 Что такое рекурсия
- 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 Ограничения в транзакциях
- 288 Угрозы целостности данных
- 305 Глава 15. Использование SQL в приложениях
- 305 SQL в приложении
- 306 Следите за звездочкой
- 306 Сильные и слабые стороны SQL
- 307 Сильные и слабые стороны процедурных языков
- 307 Проблемы, возникающие при совместном использовании SQL с процедурными языками
- 308 Вставка инструкций SQL в процедурные языки
- 308 Внедрение кода SQL
- 311 Модульный язык
- 313 Объектно-ориентированные инструменты RAD
- 314 Использование SQL в приложении Microsoft Access
- 305 SQL в приложении
- 317 ЧАСТЬ V. SQL НА ПРАКТИКЕ
- 319 Глава 16. Доступ к данным с помощью ODBC и JDBC
- 319 ODBC
- 320 Интерфейс ODBC
- 320 Компоненты ODBC
- 321 ODBC в среде «клиент/сервер»
- 322 ODBC и Интернет
- 323 Серверные расширения
- 323 Клиентские расширения
- 324 ODBC и интранет
- 325 JDBC
- 319 ODBC
- 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 Закрытие курсора
- 348 Объявление курсора
- 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 Хранимые модули
- 356 Составные инструкции
- 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 совершенно бесплатно.
Рейтинг книги:
8 голосов
2067