MySQL на примерах Представляем Вашему вниманию книгу "MySQL на примерах", написанную сотрудниками нашей студии Кузнецовым Максимом Валерьевичем и Симдяновым Игорем Вячеславовичем.
 Книги в компьютерной тематике традиционно делятся на два типа: последовательно излагающие материал и рецептурно. Проводя аналогию можно сказать, что первый тип книг относится к своду законов, а второй к их комментариям. При последовательном изложении материала приводится наиболее полный список функций и конструкций и краткие примеры их использования, при рецептурном изложении приводятся наиболее эффективные методики, удачные решения, традиционные методы, наиболее частые ошибки и даже фольклёр, т.е. передаётся "дух" предметной области. Данная книга относится ко второму типу.
Описывается версия 5.1 популярной СУБД MySQL, включая вложенные запросы, хранимые процедуры, представления, триггеры, курсоры, информационную схему, планировщик заданий, сегментирование. Большое внимание уделяется взаимодействию клиентского кода на PHP с СУБД MySQL. В частности подробно рассматриваются две наиболее популярные библиотеки: классическая библиотека php_mysql и новая объектно-ориентрированная библиотека php_mysqli. На компакт диске содержатся дистрибутивы и исходные коды MySQL версий 5.0, 5.1 и 5.2 для Windows и Linux, а также графические клиенты.
Страничка на сайте издательства
Заказать книгу "MySQL на примерах" можно в Интернет-магазине ОЗОН.
Содержание Оглавление Введение Благодарности
Глава 1. Установка MySQL 1.1. Структура MySQL 1.1.1. Клиент-серверная архитектура 1.1.2. Загрузка дистрибутивов 1.1.3. Структура дистрибутива 1.1.4. Официальная документация 1.2. Установка MySQL под Windows 1.2.1. Процесс установки 1.2.2. Постинсталляционная настройка 1.2.3. Проверка работоспособности MySQL 1.3. Установка MySQL под Linux 1.4. Конфигурационный файл 1.5. Перемещение каталога данных 1.6. Обновление текущей версии 1.7. Обзор утилит MySQL 1.8. Утилита mysql 1.8.1. Командная строка 1.8.2. Установка соединения с локальным сервером 1.8.3. Установка соединения с удаленным сервером 1.8.4. Вертикальный режим вывода 1.9. Настройка кодировок 1.10. Графические клиенты MySQL 1.11. Перенос баз данных с одного сервера на другой 1.11.1. Копирование бинарных файлов 1.11.2. Создание SQL-дампа 1.11.3. Использование операторов SELECT и LOAD DATA 1.11.4. Операторы BACKUP TABLE и RESTORE TABLE 1.12. Журнальные файлы MySQL 1.12.1. Журнальные таблицы 1.12.2. Журнал ошибок 1.12.3. Общий журнал запросов 1.12.4. Бинарный журнал регистраций 1.12.5. Журнал медленных запросов 1.13. Лицензирование MySQL
Глава 2. Базы данных и таблицы 2.1. Создание базы данных 2.2. Выбор базы данных 2.3. Создание таблиц 2.3.1. Структура таблицы 2.3.2. Просмотр структуры таблицы 2.3.3. Параметры столбцов 2.3.4. Допустимые имена баз данных, таблиц и столбцов 2.3.5. Параметры таблицы 2.3.6. Временные таблицы 2.3.7. Создание копии таблицы 2.3.8. Размещение таблиц в оперативной памяти 2.3.9. Объединение нескольких таблиц в одну 2.3.10. Размещение таблиц на удаленной машине 2.4. Удаление таблиц 2.5. Редактирование таблицы 2.5.1. Добавление столбца 2.5.2. Удаление столбца 2.5.3. Изменение уже существующих столбцов 2.5.4. Переименование таблицы 2.5.5. Преобразование параметров таблицы 2.6. Восстановление таблиц 2.6.1. Оператор REPAIR TABLE 2.6.2. Контрольная сумма таблицы
Глава 3. Индексы 3.1. Индексация столбцов при создании таблицы 3.1.1. Первичный ключ 3.1.2. Создание уникального индекса при помощи атрибута AUTO_INCREMENT 3.1.3. Обычный и уникальный индексы 3.2. Добавление и удаление индексов в существующую таблицу 3.2.1. Добавление индекса 3.2.2. Удаление индекса 3.3. Восстановление индексов
Глава 4. Заполнение, обновление и очистка таблиц 4.1. Вставка записи в таблицу. Оператор INSERT 4.1.1. Вставка числовых значений 4.1.2. Вставка строковых значений 4.1.3. Вставка календарных значений 4.1.4. Тип данных TIMESTAMP 4.1.5. Вставка данных в формате UNIXSTAMP 4.1.6. Вставка уникальных значений 4.1.7. Механизм AUTO_INCREMENT 4.1.8. Вставка вычисляемых значений 4.2. Многострочный оператор INSERT 4.3. Отложенная вставка записей 4.4. Пакетная загрузка данных. Оператор INSERT ... SELECT 4.5. Удаление данных 4.5.1. Оператор DELETE 4.5.2. Оператор TRUNCATE 4.5.3. Удаление из нескольких таблиц 4.5.4. Каскадное удаление из нескольких таблиц 4.6. Обновление записей 4.6.1. Оператор UPDATE 4.6.2. Многотабличный оператор UPDATE 4.6.3. Оператор REPLACE
Глава 5. Извлечение данных 5.1. Простейшая выборка из таблицы 5.2. Условная выборка 5.3. Комбинированные условия 5.4. NULL и логические операторы 5.5. Выборка из диапазона 5.6. Выборка множества 5.7. Использование строк в условии 5.8. Использование календарных значений в условии 5.9. Форматирование календарных значений 5.10. Модификация календарных значений 5.11. Псевдонимы столбцов 5.12. Сортировка записей 5.13. Вывод записей в случайном порядке 5.14. Ограничение выборки 5.15. Текущая версия MySQL 5.16. Количество записей в таблице 5.17. Поиск минимального и максимального значений 5.18. Вывод уникальных значений 5.19. Групповые условия. Условие HAVING 5.20. Объединение таблиц 5.21. Перекрестное объединение таблиц 5.22. Самообъединение таблиц 5.23. Объединение таблиц при помощи JOIN 5.24. Вложенный запрос, возвращающий одно значение 5.25. Вложенные запросы, возвращающие несколько строк 5.25.1. Ключевое слово IN 5.25.2. Ключевое слово ANY (SOME) 5.25.3. Ключевое слово ALL 5.26. Проверка результирующей таблицы на существование 5.27. Вложенные запросы, возвращающие несколько столбцов 5.28. Подзапросы в конструкции FROM
Глава 6. Встроенные функции 6.1. Математические функции 6.1.1. Вычисление площади треугольников 6.1.2. Округление результатов вычисления 6.1.3. Вывод случайной записи 6.2. Функции даты и времени 6.2.1. Сложение и вычитание интервалов 6.2.2. Заполнение календарных значений 6.2.3. Форматирование календарных значений 6.2.4. Вычисление возраста человека 6.2.5. Преобразование даты в UNIXSTAMP-формат 6.3. Строковые функции 6.3.1. Изменение кодировки строки 6.3.2. Первые несколько символов строки 6.3.3. Извлечение инициалов 6.3.4. Изменение регистра строки 6.3.5. Сжатие строки 6.3.6. Загрузка строки из файла 6.3.7. Извлечение строк, содержащих искомую подстроку в поле типа SET 6.4. Функции шифрования 6.4.1. Обратимое шифрование 6.4.2. Необратимое шифрование 6.5. Функции управления потоком 6.5.1. Статус записи 6.5.2. Замена NULL на эквиваленты 6.6. Информационные функции 6.6.1. Статусная информация о текущем сеансе 6.6.2. Информация о сервере 6.6.3. Фактическое количество строк в таблице 6.7. Разное 6.7.1. Преобразование IP-адреса 6.7.2. Блокировка 6.7.3. Универсальный уникальный идентификатор компьютера
Глава 7. Поиск 7.1. Регулярные выражения 7.2. Полнотекстовый поиск 7.2.1. Индекс FULLTEXT 7.2.2. Конструкция MATCH (...) AGAINST (...) 7.2.3. Модификаторы полнотекстового поиска 7.2.4. Логический режим 7.2.5. Режим расширения запроса
Глава 8. Функции, применяемые вместе с конструкцией GROUP BY 8.1. Среднее значение 8.2. Сортировка агрегатных значений 8.3. Подсчет количества записей в таблице 8.4. Объединение значений группы 8.5. Поиск минимального и максимального значений 8.6. Сумма столбца 8.7. Конструкция WITH ROLLUP
Глава 9. Переменные 9.1. Переменные SQL 9.2. Нумерация записей 9.3. Системные переменные сервера 9.4. Динамические запросы
Глава 10. Транзакции и блокировки 10.1. Транзакции 10.2. Когда можно обойтись без транзакций? 10.3. Блокировка таблиц
Глава 11. Администрирование MySQL 11.1. Создание и удаление пользователей 11.2. Назначение пароля 11.3. Восстановление утерянного пароля 11.4. Удаленный доступ к MySQL 11.5. Управление привилегиями пользователей 11.6. Просмотр существующих привилегий 11.7. Ограничение на число соединений с сервером и число запросов 11.8. Репликация
Глава 12. Хранимые процедуры и функции 12.1. Создание хранимой процедуры (функции) 12.2. Использование параметров 12.3. Локальные переменные 12.4. Присвоение значения локальной переменной 12.5. Форматирование временного интервала 12.6. Группа характеристик хранимых процедур 12.7. Операторы ветвления 12.7.1. Оператор IF...THEN...ELSE 12.7.2. Оператор CASE 12.7.3. Проверка правильности ввода 12.7.4. Вывод приветствия в зависимости от времени суток 12.8. Циклы 12.8.1. Оператор WHILE 12.8.2. Досрочный выход из цикла 12.8.3. Оператор REPEAT 12.8.4. Оператор LOOP 12.8.5. Отсутствующие идентификаторы 12.9. Получение списка созданных хранимых процедур и функций 12.10. Содержимое хранимой процедуры 12.11. Удаление хранимых процедур и функций 12.12. Редактирование хранимых процедур 12.13. Обработчики ошибок 12.14. Курсоры 12.15. Рекурсивные хранимые процедуры
Глава 13. Триггеры 13.1. Создание триггера 13.2. Удаление триггера 13.3. Список созданных триггеров
Глава 14. Представления 14.1. Создание представлений 14.2. Сокрытие столбцов 14.3. Сокрытие строк 14.4. Обновление и удаление записей при помощи представлений 14.5. Редактирование представления 14.6. Удаление представлений 14.7. Просмотр структуры представления
Глава 15. Информационная схема 15.1. Список баз данных 15.2. Список таблиц 15.3. Список столбцов
Глава 16. Планировщик заданий 16.1. Управление планировщиком задач 16.2. Размещение задания 16.3. Удаление задания 16.4. Редактирование задания 16.5. Список заданий
Глава 17. Сегментирование 17.1. Включено ли сегментирование? 17.2. Создание сегментированной таблицы 17.3. Типы сегментирования таблиц 17.3.1. Линейная сегментация RANGE 17.3.2. Списочная сегментация LIST 17.3.3. Хэш-сегментация HASH 17.3.4. Индексная сегментация KEY 17.4. Подразделы 17.5. Распределение подразделов по разным папкам и дискам 17.6. Удаление разделов 17.7. Добавление разделов 17.8. Перепланировка разделов
Глава 18. Взаимодействие с PHP 18.1. Расширение php_mysql 18.2. Расширение php_mysqli 18.3. Создание базы данных 18.4. Создание и заполнение таблицы 18.5. Заполнение связанных таблиц 18.6. Вывод данных 18.7. Повторное чтение результирующей таблицы 18.8. Количество строк в таблице 18.9. Вывод результатов в несколько столбцов 18.10. Постраничная навигация 18.11. Удаление данных 18.12. Сортировка 18.13. Размер базы данных
Заключение Приложение 1. Системные переменные MySQL Приложение 2. Описание компакт-диска Предметный указатель
|