Статьи в категории Doctrine

Экранирование строк в UPDATE запросах Doctrine

// Сентябрь 23rd, 2010 // 1 Comment » // Doctrine

С коллегой разбирали, почему не экранируются строки при UPDATE DQL-запросах.

$q = Doctrine_Core::getTable(‘SomeModel’)->getQueryObject()
->update(‘SomeModel model’)
->set(‘block_name’,$blockName)
->where(‘id=?’, (int)$id);

Так вот значение поля blockNamе не было обрамлено кавычками, в результате SQL-запрос не выполнялся.

А дело было вот в чем, правильный синтаксис set() для экранирования такой:

// If you just want to set the amount to a value
$q->set(‘block_name’, ‘?’, ‘some text’);

Удачи вам, и поменьше багов!

Share

Про инкремент в UPDATE запросе Doctrine ORM

// Сентябрь 10th, 2010 // 2 Comments » // Doctrine, PHP, Веб-разработка

Сегодня обнаружил с коллегой особенность при создании DQL-запроса.

(далее…)

Share

Что нас ожидает в Zend Framework 2 и Doctrine 2

// Июль 23rd, 2010 // 3 Comments » // Doctrine, Zend Framework, Веб-разработка

Я, как Zend Framework (PHP) программист работаю в основном с такими инструментами как ZF и Doctrine. Поэтому пристально слежу за выпуском их новых версий. Думаю к концу года (пока это есть в планах) завершится разработка второй ветки Zend Framework. Итак, что же нас ждет в новой версии?

(далее…)

Share

Пагинация в Doctrine (Использование SQL_CALC_FOUND_ROWS)

// Июнь 24th, 2010 // 1 Comment » // Doctrine

Начиная от версии 4.0 в СУБД MySQL появилась достаточно удобная возможность подсчета количества всех подходящих под запрос записей, когда количество записей ограничивается LIMIT’ом. При работе с поиском в БД, а так же при выборках из таблиц с большим количеством записей такой функционал просто необходим. В этой статье я расскажу, как можно использовать эту возможность в ORM Doctrine

Сразу хотелось бы сказать, что данный способ пагинации был выбран, т.к. необходимо было реализовать совместимость с текущим проектом, где он используется.

(далее…)

Share

Точные имена свойств модели в Doctrine

// Июнь 24th, 2010 // No Comments » // Doctrine, MySQL

Эта статья посвящена точному(с учётом регистра) отображению названий колонок таблицы БД в свойства модели. Данная проблема актуальна для 1ой ветки ORM, т.к. во второй ветке она похоже уже решена. Но т.к. стабильным релизом на данный момент является версия 1.2.1 а версия 2 в стадии ALPHA4, то думаю, что эта проблема актуальная для многих пользователей ORM.

Если camelCase названия/алиасы колонок не используются в вашем проекте, то данное решение будет неактуально для вас.

(далее…)

Share