Вывод строки запроса построенного в db_select

Конструктор запросов db_select позволяет абстрагироваться от движка базы данных. Если запрос довольно сложный, то на этапе тестирования может потребоваться, что называется, убедиться в том, что конечный запрос на языке SQL к базе именно тот, что вы ожидаете.

Класс SelectQuery даёт эту возможность через реализацию магического метода __toString().

Покажу на коротком примере как это работает:

Мы получим следующую строку запроса:

Как видите это не сам запрос, но вполне читаемый SQL шаблон. Для вывода значений подставляемых плейсхолдеров, воспользуйтесь функцией SelectQuery::arguments().

Мало букафф? Читайте есчо !

Примеры работы с EntityFieldQuery

Декабрь 7, 2017 г.

Один раз начав работать с EntityFieldQuery, вы уже не захотите городить SQL запросы с джойнами таблиц полей сущностей. Что то сложное, возможно, сделать будет слишком трудно на этом конструкторе, но типовые выборки данных делать приятно, быстро и удобно. ...

Читать

Вывод результатов формы в саму форму после submit

Март 2, 2017 г.

Что делают в большинстве случаев после успешного submit данных формы? Вариантов два - либо показывают системное сообщение drupal_set_messge(), либо производят переадресацию на некую страницу с результатами. Первый вариант почти всегда выглядит неказисто, ...

Читать

Программное удаление полей и групп из сущности Config Pages

Февраль 12, 2019 г.

Я уже рассказывал ранее как программно можно обновить данные в сущности config_pages. А здесь покажу как программно можно выполнить удаление полей и групп (созданных модулем field_group). Config Pages использует Field API, поэтому удаление полей ...

Читать

Еще один пример работы с EntityFieldQuery

Декабрь 23, 2020 г.

Время от времени продолжаю кодить под drupal 7, публикую еще один пример для работы EntityFieldQuery, на этот раз с фильтром по полю типа term reference. Основная логика точно такая же как и при работе с data полями (где у нас хранятся тексты или ...

Читать
 

Комментарии к «Вывод строки запроса построенного в db_select»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: