KB3189364 — хранилище запросов возвращает необычные символы при использовании оператора JOIN в SQL Server 2016

Применяется к
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Проблема

Предположим, что вы включили компонент "Хранилище запросов" для базы данных в экземпляре SQL Server 2016. При запросе плана запроса с помощью операций объединения столбец query_plan в результатах запроса содержит необычные символы.

Например, можно присоединить sys.query_store_plan к другому представлению, как в следующем запросе:

ВЫБЕРИТЕ qt.query_sql_text, q.query_id, qt.query_text_id, p.plan_id, p.query_plan
ИЗ sys.query_store_query_text AS qt
         ВНУТРЕННЕЕ СОЕДИНЕНИЕ sys.query_store_query AS q ON qt.query_text_id = q.query_text_id
         ВНУТРЕННЕЕ СОЕДИНЕНИЕ sys.query_store_plan AS p ON q.query_id = p.query_id
В этом случае query_plan столбец в результатах запроса содержит такие символы, как следующие:

传/傳

Решение

Исправление этой проблемы включено в следующий накопительный пакет обновления для SQL Server:

Накопительный пакет обновления 2 для SQL Server 2016

Сведения о накопительных обновлениях для SQL Server

Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые входили в состав предыдущего накопительного пакета обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:

Последний накопительный пакет обновления для SQL Server 2016
      

Временное решение

Чтобы обойти эту проблему, не присоединяйте sys.query_store_plan к другому представлению при попытке получить query_plan. Чтобы получить query_plan для данного plan_id, запустите отдельный запрос для этого plan_id, который выглядит примерно так:

Выберите plan_id query_plan
от sys.query_store_plan
где plan_id = plan_id

Состояние

Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».

Ссылки

Узнайте о терминологии , используемой корпорацией Майкрософт для описания обновлений программного обеспечения.