В Drupal 7 нужно ли заключать запросы к базе данных в двойные кавычки?


Я переношу пользовательские модули с Drupal 6 на 7. С тех пор как API базы данных изменился, предстоит сделать довольно много. Во время этого я наткнулся на проблему, связанную с цитатами. Я привык заключать строки в PHP в одинарные кавычки, поэтому в Drupal 6 я написал

$q = 'SELECT * FROM {node} WHERE type = "page"';

Однако без какого-либо шаблона (насколько я смог обнаружить) некоторые из этих запросов завершаются ошибкой в Drupal 7. При изменении приведенной выше строки на

$q = "SELECT * FROM {node} WHERE type = 'page'";

Это внезапно срабатывает. Но я не смог найти ни одного информация, требуется ли этот стиль цитирования для нового DAL. У кого-нибудь есть дополнительная информация по этому поводу или вы можете подтвердить мое наблюдение?

 4
Author: Paul, 2012-01-10

1 answers

Некоторые ядра баз данных SQL не поддерживают двойные кавычки внутри запроса, поэтому у вас ничего не получилось. Подробнее читайте здесь: db_query#комментарий-11959.

 6
Author: ovi, 2012-01-10 11:57:15