Как известно система битрикс имеет API через которое подавляющая часть компонентов на сайте взаимодействует с данными. За простоту и удобство в некоторых ситуациях приходиться жертвовать производительностью. Однако имея некий опыт в программировании, и зная синтаксис языка запросов к базе данных, есть возможность так же взаимодействовать с базой данных путем произвольных запросов. Тут конечно можно наделать делов, поэтому просьба быть с вашими данными крайне аккуратно.
Для заботы с базой данных в системе битрикс есть класс CDatabase. При каждой загрузке страницы автоматически создается переменная $DB, содержащая глобальный объект, который является объектом класса CDatabase. Используя этот объект можно проводить все действия с базой данных.
Класс для работы с базой данных содержит множество методов, один из них мы рассмотрим тут.
Метод выполняет запрос к базе данных и в случае успешного выполнения возвращает результат в виде объекта класса CDBResult.
Синтаксис:
mixed CDatabase::Query( string sql, bool ignore_errors=false, string error_position="", array Options=array() )
Параметры:
Если параметр ignore_errors равен «true», и возникла ошибка при запросе, то метод вернет «false». В ином случае то метод прерывает выполнение страницы, выполняя перед этим следующие действия:
Пример запроса:
global $DB; $results = $DB->Query("SELECT `VALUE` FROM `b_option` WHERE `NAME` LIKE 'email_from'"); while($row = $results->Fetch()){ echo '<pre>'; print_r($row); echo '</pre>'; }