Перейти к основному содержимому

Структура таблиц Инфоблоков в 1С-Битрикс

В системе 1С-Битрикс инфоблоки организованы через набор связанных таблиц. Логика хранения данных отличается в зависимости от версии инфоблока (1.0 или 2.0).

Общие таблицы (Метаданные и Структура)

Эти таблицы содержат основные настройки, дерево разделов и базовые поля элементов, независимо от версии:

  • b_iblock — реестр всех инфоблоков системы.
  • b_iblock_type — типы инфоблоков.
  • b_iblock_section — структура разделов (категорий).
  • b_iblock_element — основные поля элементов (ID, Name, Code, Active и др.).
  • b_iblock_property — описание (метаданные) свойств.

Хранение значений свойств (1.0 vs 2.0)

Главное различие кроется в способе записи пользовательских данных.

ХарактеристикаИнфоблоки 1.0Инфоблоки 2.0
Таблица свойствb_iblock_element_property (одна общая таблица для всех ИБ в системе)b_iblock_element_prop_s{ID} (индивидуальная таблица для каждого ИБ)
Множественные свойстваХранятся в общей таблице b_iblock_element_propertyВыносятся в таблицу b_iblock_element_prop_m{ID}
ПроизводительностьНиже. Требуется много JOIN для сборки одного элемента.Выше. Все значения свойств элемента хранятся в одной строке.

Использование через ORM (D7)

Для работы с этими таблицами в современном коде Битрикс рекомендуется использовать ORM-классы:

  • Для элементов: \Bitrix\Iblock\ElementTable
  • Для ИБ 2.0 можно генерировать сущности: \Bitrix\Iblock\PropertyIndex\Storage::getEntity($iblockId)