Архив категорий: MySQL

Рассмотрим короткий пример, как сохранить порядок выборки MySQL при запросе с условием IN. Итак, допустим мы имеем запрос: MySQL, вероятнее всего вернёт выборку в отсортированном по полю id виде или же в каком-то третьем, зависимо от настроек. Чтобы результаты были именно в порядке 2, 5, 7, 3, 15, 4 используйте…

Встретив ошибку «Incorrect format parameter» при импорте в phpMyAdmin сходу тяжело понять, что именно не так и в чём беда. Но решение очень простое, хоть и не очевидное. На самом деле решение проблемы кроется в изменении трех параметров в Вашем php.ini где найти php.ini). Итак, увеличьте максимальный размер загружаемого файла:…

Ошибка Got a packet bigger than «max_allowed_packet» bytes может возникнуть при попытке загрузить большой дамп. Варианты решения ниже в статье. Итак, предлагаю два варианта решения: 1) Исправить параметр в конфиге MySQL. Находим и открываем файл конфигурации MySQL (unix-системах он, вероятно находится тут: etc/my.cnf) После этого в нём исправляем параметр: Сохраняем…

В этой статье приведу короткий и самый быстрый вариант решения ошибки «Lock wait timeout exceeded; try restarting transaction». Конечно, если ошибка у Вас в системе — нужно искать и решать корень проблемы — например, незакрытые транзакции. Я же приведу алгоритм быстро, в моменте, решения. Итак, если Вы выполняете запросы, не…

Необходимость получения id только что вставленной записи — постоянная задача. Сейчас покажу, как работая с PDO b php получить это значение после INSERT-a. Все, как мы знаем очень просто: Рассмотрим пример: Здесь все типично — подготавливаем запрос, выполняем его и средствами PDO получаем послений вставленный ID. Также Вам может понадобиться…

Работа с данными в формате ключ-значение — другими словами с ассоциативными массивами очень удобна. Сейчас приведу просто пример как заставить PDO вернуть записи БД сразу в формате ключ-значение. Это полезно, когда Вам нужно получить, например id и название записи. При этом формат по умолчанию, мягко говоря не удобен при необходимости…

25

Май

Mysql. РЕШЕНО. Table storage engine for doesn’t have this option on order by query.

При выполнении, например, импорта дампа MySQL можно столкнуться с неприятной ошибкой — Table storage engine for doesn’t have this option on order by query. О том, как её решить речь пойдет в этой статье. Возможной причиной появления ошибки является переключение для созданной таблицы её типа с MyISAM на InnoDB. Но,…

Создание регулярных бекапов — залог Вашего спокойного сна. Сегодня я покажу, как сделать бекап базы данных всего в одну строку php-кода. Будем использовать php-функцию shell, а также утилиту mysqldump. Код будет иметь примерно следующий вид: Конечно же, значение имени, пароля, хоста и имени Базы Данных нужно изменить на соответствующие Вашим…

PDO кроет множество полезных и интересных особенностей, способных существенно облегчить жизнь во множестве типичных задач. Например, есть возможность вернуть парный, проиндексированный результат выборки. К примеру, мы имеем следующие данные: Для того, чтобы получить результат в виде $date => $price нужно выполнить следующий несложный запрос: В результате мы получим массив, индексами…

Есть ситуации, когда в зависимости от определенных условий в блоке SELECT в запросе нужно возвращать определенные поля или же под один алиас возвращать разные значения. Как это сделать и в каких ситуациях это решает проблему я покажу в этой статье. Ситуация из реальной практики — в БД хранится цена и…