Советы PHP-разработчика

Блог содержащий короткие заметки касающиеся программирования для web.

Записи с тегом MySQL

Невозможно подключиться по паролю после установки MariaDB 10

При установке MariaDB 10 на чистую ubuntu, инсталлер не запросил ввести пароль, а после установки подключиться к mysql стало возможно только через терминал. В противном случае возвращается ошибка ERROR 1698 (28000): Access denied for user 'root'@'localhost'. Почему так получилось и что с этим делать? Об этом и поговорим.

  • 2016-06-10 18:49:36
читать далее

Yii2. Особенность ActiveRecord::findOne() Баг или фича?

Yii2. Особенность ActiveRecord::findOne() Баг или фича?

На этой неделе столкнулись с интересной особенностью работы ActiveRecord::find()->one(). Как выяснилось, она никак не ограничивает результат выборки, то есть не добавляет к запросу limit(1). Чем это плохо и в каких случаях необходимо исправить ваш код? Об этом и поговорим.

  • 2016-02-26 16:40:43
читать далее

Установка strict mode для MySQL

Установка strict mode для MySQL

При разработке приложения, которое работает с БД, необходимо по-максимуму обеспечить корректность работы с ней. Лучший способ обеспечить себе здоровый сон, когда ваше приложение работает на продакшене - включить строгий режим работы СУБД.

Конечно это не гарантирует 100-процентной уверенности, но поможет отловить некоторые неприятные ошибки. Итак, приведу краткое описание некоторых весьма полезных режимов:

  • 2015-06-27 09:13:42
читать далее

Удаление связанных записей в MySQL одним запросом

В MySQL есть возможность удалять связанные данные через внешние ключи (foreign key). Но это возможно только для некоторых движков БД (например, InnoDB) и в том случае, если для ключей задано ограничение ON DELETE CASCADE. В противном случае придется удалять записи вручную. Как раз об этом и пойдет речь в этой заметке.

  • 2015-01-24 07:49:55
читать далее

Выполнение запросов к БД после коннекта в Yii и Yii2

В некоторых проектах иногда требуется выполнять определенный набор запросов сразу после установления коннекта с БД. Яркий пример - установка таймзоны для MySQL. Конечно можно установить ее глобально, но это не всегда приемлемо (например, когда сайт находится на хостинге и нет возможности изменить настройки).

  • 2014-12-26 19:07:57
читать далее