Документация для разработчиков

Класс CDatabase

CDatabase - класс для работы с базой данной.

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

Методы класса

Метод Описание С версии
ForSql Преобразует строки для вставки в SQL запрос.
Query Выполняет запрос.
QueryBind Выполняет SQL-запросы типа "UPDATE", "INSERT", в которых есть необходимость связывания переменных (как правило для полей типа BLOB, CLOB, LONG и т.п.). 3.0.10
QueryBindSelect Выполняет SQL-запрос типа "SELECT", в котором есть необходимость связывания переменных.
Update Универсальный update в базу данных (без подготовки значений полей).
NextID Возвращает очередное значения сиквенса.
Insert Универсальный insert в базу данных (без подготовки значений полей).
LastID Получает ID последней вставленной записи.
PrepareFields Инициализирует глобальные переменные для вставки в SQL запрос.
PrepareInsert Универсальный insert в базу данных (c подготовкой значений полей).
PrepareUpdate Универсальный update в базу данных (c подготовкой значений полей).
InitTableVarsForEdit Инициализирует глобальные переменные для показа.
ParseSqlBatch Разбирает пакет запросов на массив. 3.0.10
RunSqlBatch Выполняет файл с пакетом запросов. 3.0.10
StartTransaction Открывает транзакцию.
Commit Записывает транзакцию.
Rollback Откатывает транзакцию.
Connect Соединяет с базой данных.
Disconnect Закрывает соединение с базой данных.

Методы для работы с датой и временем

Метод Описание С версии
CurrentDateFunction Возвращает функцию текущей даты.
CurrentTimeFunction Возвращает функцию текущей даты-время. 4.0.4
CharToDateFunction Строка для вставки значения даты в запрос к базе данных.
DateToCharFunction Строка для получения значения даты в запросе к базе данных.
DateFormatToPHP Конвертирует формат даты заданный для языка (сайта) в формат принятый в PHP (в функции date). 3.0.10
FormatDate Форматирует дату из одного формата в другой. 3.0.10
CompareDates Сравнивает две даты между собой. 3.1.6
IsDate Проверяет дату на правильность.
DatetimeToTimestampFunction Возвращает валидный timestamp без обращения к MakeTimeStamp. 12.5.12

Примечание При работе с БД приведение времени к GMT является минимально необходимым. Чтобы меньше зависеть от настроек сервера, лучше использовать datetime. В этом случае текущее значение времени придется получать на PHP.

См. также



Пользовательские комментарии

Пользовательские комментарии не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.

Добавлять комментарии могут только зарегистрированные пользователи. Сообщения для просмотра появляются после модерации.
3
Алексей Казаков
Если установить константу

Код
define("ERROR_EMAIL", "my@email.com")


то при возникновении MySQL ошибки на указанный ящик будет приходить e-mail со всеми переменными $_GET, $_POST, $_COOKIE, $_SERVER

также можно установить параметры

Код
ERROR_EMAIL_FROM (default: error@bitrix.ru)
ERROR_EMAIL_REPLY_TO (default: admin@bitrix.ru)
3
Алексей Казаков
если в папке /bitrix/php_interface/ создать файл dbquery_error.php, то при возникновении ошибки БД будет выведено служебное сообщение от MySQL, а затем подгружен этот файл.


А если необходимо убрать служебный текст, то в этом файле можно прописать что-то типа

Код
<?
$str = ob_get_contents();
ob_clean();

echo file_get_contents($_SERVER["DOCUMENT_ROOT"]."/error.html");
echo "\n\n\n<!--\n".$str."\n-->";
?>


и тогда выведется содержимое файла $_SERVER["DOCUMENT_ROOT"]."/error.html", а затем HTML комментарием код ошибки
© «Битрикс», 2001-2018, «1С-Битрикс», 2018