Срок работы пробной версии продукта истек. Через две недели этот сайт полностью прекратит свою работу. Вы можете купить полнофункциональную версию продукта на сайте www.1c-bitrix.ru. Как хранить большие данные в поле HTML/Текст базы данных MSSQL?

Как хранить большие данные в поле HTML/Текст базы данных MSSQL?

Проблема хранения больших данных в свойствах информационных блоков базы MSSQL существует давно и на сколько нам известно сейчас решения проблемы нет. Проблема заключается в том, что когда мы в MSSQL версии создаем поле типа HTML/Текст, то в базе данных MySQL данное поле создается с типом TEXT, который позволяет хранить до 64kb данных, т.е. не более 65535 символов, а в версии MSSQL поле создается типа VARCHAR(2000). Таким образом в таких свойствах хранить текст более 2000 символов не получится, обойти эту проблему можно только костылями, так как официальных обновлений нет.

Проблему можно решить хранением больших данных только в детальном описании элемента или использовании highload информационных блоков, также можно реализовать при помощи событий простой перехват таких свойств и запись в отдельную таблицу. Последний способ при грамотной реализации можно легко сделать не отличным от стандартного функционала. В отдельной таблице необходимо использовать тип VARCHAR(MAX) для хранения больших данных, так как тип TEXT компания Microsoft не рекомендует использовать.

 1132 MSSQL, Битрикс
12 февраля 2015
Команда BXCert

Наша команда разрабатывает портал BXCert, а также занимается разработкой сайтов на CMS 1С-Битрикс. Все участники являются сертифицированными специалистами Bitrix.

Комментарии

Чтобы оставлять комментарии необходимо зарегистрироваться и пройти авторизацию.