[ Вопрос дня ] Почему в SQL Profiler отображается не название используемого индекса 1С, а его номер?

Доброго дня, коллеги!

Последние версии платформы 1С не перестают нас удивлять множеством изменений разных механизмов системы. Не остались в стороне и индексы 1С. Соответственно слушатели курса Ускорение и оптимизация систем на 1С:Предприятие 8.3 + подготовка на 1С:Эксперт сразу же это заметили.

Вопрос

Добрый день. Подскажите, пожалуйста, почему в SQL Profiler отображается не название используемого индекса “_Reference7_ByFieldFld109”, а его номер “_Reference7_9”?

В примерах: Index Seek(OBJECT:([demo].[dbo].[_Reference7].[_Reference7_ByFieldFld109] AS [T1])

У меня: Index Seek(OBJECT:([demo].[dbo].[_Reference7].[_Reference7_9] AS [T1])

И только в обработке “Просмотр метаданных” я по номеру 9 нахожу этот индекс в списке и понимаю, что на самом деле поиск шел по индексу “_Reference7_ByFieldFld109”. Почему так?

Ответ

Здравствуйте! Начиная с одной из версий платформы, индексы в СУБД стали именоваться по другому принципу “ИмяТаблицы_ПорядковыйНомер”. Ранее нумерация была связана с названием и типом полей, из которых индекс состоит. Изменение в платформе произошло относительно недавно, с этим и связано такое отличие.

Вопрос

Правильно я понимаю, что порядковый номер индекса совпадает с порядком в обработке “Структура хранения метаданных” и начинается не с “0”, а с “1”?

Ответ

Имя индекса отображается одинаково и в MS SQL и в обработке структура хранения метаданных и начинается с 1.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Вход на сайт

Зарегистрироваться

Подтверждение регистрации будет отправлено на указанный e-mail.

Я подтверждаю, что ознакомлен(а) с Пользовательским соглашением, принимаю его условия и даю свое согласие на обработку моих персональных данных.

Восстановить доступ

E-mail или логин

Ссылка на создание нового пароля будет отправлена на указанный e-mail.