logo

Paleta - Deixe colorido🎨

Palette — Construtor visual de páginas. Não precisa ser designer.

Demonstração ao vivo Baixar Palette

Scroll

Banco de dados no Drupal 7 - Aula 8: INSERT INTO

02/12/2019, by Ivan

Запросы вставки всегда должны использовать конструктор запросов. Некоторые БД требуют специальных обработчиков для LOB (Large OBject, такие как текст в MySQL) и BLOB (Binary Large OBject) полей, так что уровень абстракции необходим для индивидуальных драйверов БД для реализации подобных обработчиков.

Запросы вставки начинаются с использования функции db_insert():

Banco de dados no Drupal 7 - Aula 7: processando resultados (fetch)

02/12/2019, by Ivan

Запрос выборки всегда будет возвращать результат обработки запроса как 0 или больше записей. Есть несколько путей обработать данные результата запроса, которые вы можете использовать по своему усмотрению.

Наиболее часто результаты используются в виде цикла foreach().

Banco de dados no Drupal 7 - Aula 6: alterando consultas (hook_query_alter)

02/12/2019, by Ivan

Важной особенностью динамических запросов выбора является возможность других модулей изменять запросы на лету. Это позволяет другим модулям вставлять их собственные инструкции в запрос, тем самым влияя на поведение запроса или применить изменения во время выполнения запроса, например задать разграничение прав к нодам. Существуют 3 компонента изменения запроса на лету, tagging, meta data и hook_query_alter().

Banco de dados no Drupal 7 - Aula 5: Extenders (extensões)

02/12/2019, by Ivan

Запросы выборки поддерживают расширения (extenders). Расширение дает возможность добавить функциональность к запросу выборки во время выполнения. Эта функциональность может быть дополнительным методом или обрабатывать поведение существующего метода.

Для этого используется в ООП паттерны (design patterns), расширения реализуют таким образом Decorator Pattern. Они прикрепляют дополнительные обязанности к динамическому объекту через предоставления гибкого альтернативного подкласса для метода расширения.

Banco de dados no Drupal 7 - Aula 4: consultas dinâmicas (SELECT)

02/12/2019, by Ivan

Пожалуй мы подобрались к самой интересной части Database API Drupal: динамические запросы. Динамические запросы называются так, потому что Drupal динамически дописывает строку запроса. Все запросы вставки, обновления, удаления или слияния могут быть динамическими. Запросы выборки могут быть как динамическими, так и статическими. Тем не менее, используйте динамические запросы и для запросов выборки.

Banco de dados no Drupal 7 - Aula 3: consultas estáticas (SELECT)

02/12/2019, by Ivan

Наиболее общая форма запроса в Drupal это статический запрос. Статический запрос будет передан в БД дословно. Только запрос выбора (select) может быть статический.

Только в очень простых запросах следует использовать статические запросы. Вам следует использовать динамические запросы если нужно написать сложный запрос, динамически создаваемый запрос или изменяемый после выполнения.

Простой путь выполнить статический запрос через метод запроса:

Banco de dados no Drupal 7 - Aula 2: configuração do BD

02/12/2019, by Ivan

Основным средством определения соединения с БД является массив $databases в settings.php. Как подсказывает само название, $databases позволяет определить множество соединений с БД. Он также поддерживает определение множества целей. Соединение не открывается (объект соединения не создается) пока первый раз некоторый кусочек кода не выполнит запрос к БД.

Banco de dados no Drupal 7 - Aula 1: db api

02/12/2019, by Ivan

Если вы писали модули для 6ой версии Drupal, то для вас не составит труда перейти на новый database API drupal 7. Новый DB API работает на основе расширения php PDO, что дает ему возможность работать на различных базах данных таких как MySQL, PostgreSQL, MSSQL и возможно Oracle. Насчет простоты сказать сложно, к новому синтаксису нужно привыкнуть, писать SQL-запросы куда привычнее.

Вот немного из того что пишут в официальной документации:

Drupal 7 - Trabalhando com BD via PHP PDO

02/12/2019, by Ivan

С переходом на Drupal 7 мы переходим на новый Drupal DB abstraction layer API, который сделан на основе PDOPDO уже давно используется в Zend framework, а так же во многих других php фреймворках. Все было так хорошо в Drupal 6 с написанием SQL-запросов, зачем нам что-то новое?

Для начала давайте разберемся, что такое PDO.