Полный цикл в digital

Прямые запросы к базе данных

Иногда функционала нативных объектов Битрикс, для работы с таблицами, недостаточно или они слишком наворочены.

Для работы с базой данных в системе битрикс есть класс CDatabase. При каждой загрузке страницы автоматически создается переменная $DB, содержащая глобальный объект, который является объектом класса CDatabase. Используя этот объект, можно осуществлять различные операции с базой данных:

  1. SELECT
  2. INSERT
  3. UPDATE
  4. DELETE

Метод CDatabase::Query

Метод выполняет запрос к базе данных и в случае успешного выполнения возвращает результат в виде объекта класса CDBResult.

CDatabase::Query(
    string sql,
    bool ignore_errors=false,
    string error_position="",
    array Options=array() 
)
  • sql строка SQL запроса
  • ignore_errors игнорирование возникновения ошибок при выполнении. Если true, то в случае ошибки функция возвращает false. Если параметр ignore_errors равен false, то в случае ошибки функция прекращает выполнение всей страницы. Необязательный параметр, по умолчанию — false
  • error_position строка идентифицирующая позицию в коде, откуда была вызвана данная функция CDatabase::Query. Если в SQL запросе будет ошибка и если в файле /bitrix/php_interface/dbconn.php установлена переменная $DBDebug=true;, на экране будет выведена данная информация и сам SQL запрос, так же является необязательным параметром
  • Options дополнительные опции, необязательный параметр, появился в методе начиная с версии 9.5.10

Пример запроса

// подключение API Битрикс
require_once($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/include/prolog_before.php");
// глобальная переменная
global $DB;
// запрос к базе
$results = $DB->Query("SELECT * FROM `my_table`");
// вывод ответа
while($row = $results->Fetch()){
    echo '<pre>'; print_r($row); echo '</pre>';
}
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг