Работа с БД в Drupal 7 - урок 7 - Обработка результатов запроса (fetch)
Запрос выборки всегда будет возвращать результат обработки запроса как 0 или больше записей. Есть несколько путей обработать данные результата запроса, которые вы можете использовать по своему усмотрению.
Наиболее часто результаты используются в виде цикла foreach().
Работа с БД в Drupal 7 - урок 6 - Изменение запроса на лету (hook_query_alter)
Важной особенностью динамических запросов выбора является возможность других модулей изменять запросы на лету. Это позволяет другим модулям вставлять их собственные инструкции в запрос, тем самым влияя на поведение запроса или применить изменения во время выполнения запроса, например задать разграничение прав к нодам. Существуют 3 компонента изменения запроса на лету, tagging, meta data и hook_query_alter().
Работа с БД в Drupal 7 - урок 5 - Extenders (Расширения)
Запросы выборки поддерживают расширения (extenders). Расширение дает возможность добавить функциональность к запросу выборки во время выполнения. Эта функциональность может быть дополнительным методом или обрабатывать поведение существующего метода.
Для этого используется в ООП паттерны (design patterns), расширения реализуют таким образом Decorator Pattern. Они прикрепляют дополнительные обязанности к динамическому объекту через предоставления гибкого альтернативного подкласса для метода расширения.
Работа с БД в Drupal 7 - урок 4 - Динамические запросы (SELECT)
Пожалуй мы подобрались к самой интересной части Database API Drupal: динамические запросы. Динамические запросы называются так, потому что Drupal динамически дописывает строку запроса. Все запросы вставки, обновления, удаления или слияния могут быть динамическими. Запросы выборки могут быть как динамическими, так и статическими. Тем не менее, используйте динамические запросы и для запросов выборки.
Работа с БД в Drupal 7 - урок 3 - Статические запросы (SELECT)
Наиболее общая форма запроса в Drupal это статический запрос. Статический запрос будет передан в БД дословно. Только запрос выбора (select) может быть статический.
Только в очень простых запросах следует использовать статические запросы. Вам следует использовать динамические запросы если нужно написать сложный запрос, динамически создаваемый запрос или изменяемый после выполнения.
Простой путь выполнить статический запрос через метод запроса:
Работа с БД в Drupal 7 - урок 2 - Кофигурация БД
Основным средством определения соединения с БД является массив $databases в settings.php. Как подсказывает само название, $databases позволяет определить множество соединений с БД. Он также поддерживает определение множества целей. Соединение не открывается (объект соединения не создается) пока первый раз некоторый кусочек кода не выполнит запрос к БД.
Работа с БД в Drupal 7 - урок 1 - drupal db api
Если вы писали модули для 6ой версии Drupal, то для вас не составит труда перейти на новый database API drupal 7. Новый DB API работает на основе расширения php PDO, что дает ему возможность работать на различных базах данных таких как MySQL, PostgreSQL, MSSQL и возможно Oracle. Насчет простоты сказать сложно, к новому синтаксису нужно привыкнуть, писать SQL-запросы куда привычнее.
Вот немного из того что пишут в официальной документации:
Drupal 7 - Работа с БД через PHP PDO
С переходом на Drupal 7 мы переходим на новый Drupal DB abstraction layer API, который сделан на основе PDO. PDO уже давно используется в Zend framework, а так же во многих других php фреймворках. Все было так хорошо в Drupal 6 с написанием SQL-запросов, зачем нам что-то новое?
Для начала давайте разберемся, что такое PDO.
Разработка модулей для Drupal 7
В этом разделе учебника я покажу, что Drupal это не только CMS. Мы рассмотрим из чего состоят модули Drupal, а также создадим несколько своих модулей.
Настройка страницы профайла Drupal
Поля профайла
Наш контент профиля остается практически пустой. Давайте добавим основные информационные поля, которые я буду называть "Поля профайла". Этот шаг действительно требует некоторого размышления, чтобы найти необходимые поля. Некоторые обычные: обо мне, пол, хобби, работа. Чтобы определить дополнительные поля, мы должны использовать модуль Profile2. Я обычно ставлю все поля вместе в fieldset. Вы можете добавить группы полей. Просто заполните поле, перетащите его и все готово.