Застосовується до
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 Service Pack 1 SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Ознаки

Припустимо, що у вас є таблиця Microsoft SQL Server з одним або кількома індексами, вбудованими на нього. Під час запиту на таблицю SQL Server може виконувати несумісні заповнення даних для CHAR та БІНАРНИХ стовпців. Неузгоджена поведінка для повернення кінцевої заготовки в кінці стовпців «символ» і «ДВІЙКОВІ дані» залежить від наведених нижче умов.

  • Параметри ANSI_PADDING, коли стовпці створюються в таблиці SQL Server.

  • Рішення про те, як сканувати або індексувати таблицю можна шукати в стовпцях.

Причина

У певних сценаріях SQL Server може виконувати оптимізацію, що дає змогу обходити багато операцій для швидшої доставки даних. Ця проблема виникає, оскільки SQL Server не розпізнає, що оптимізацію не можна застосувати для вказаного вище сценарію.

Додаткові відомості

Ця поведінка SQL Server не відповідає поведінці, що описано в цій статті: використання даних char та varchar.

Якщо ANSI_PADDING має значення, коли створюється стовпець char NULL, він має такий самий, як і символ, що не містить NULL-стовпець, що відповідає значенням, які мають право на розмір стовпця. Якщо ANSI_PADDING вимкнуто, коли створюється стовпець char NULL, він має такий вигляд, як стовпець varchar з ANSI_PADDING, що ВИМИКАЄТЬСЯ: пробіли в кінці буде скорочено.

Спосіб вирішення

Ця проблема усунена в таких сукупних оновлень для SQL Server:

       Сукупне оновлення 2 для SQL Server 2017

       Сукупне оновлення 9 для SQL Server 2016

       Сукупне оновлення 6 для SQL Server 2016 SP1

       Сукупне оновлення 8 для SQL Server 2014 з пакетом оновлень 2 (SP2)

       Сукупне оновлення 7 для SQL Server 2014 SP1

Кожне нове Сукупне оновлення для SQL Server містить усі поточні виправлення та всі виправлення системи безпеки, які були включені до попереднього сукупного оновлення. Ознайомтеся з найновішими сукупними оновленнями для сервера SQL Server:

Найновіше Сукупне оновлення для SQL Server 2017

Найновіше Сукупне оновлення для SQL Server 2016

Найновіше Сукупне оновлення для SQL Server 2014

Стан

Корпорація Майкрософт підтвердила, що це проблема в продуктах Microsoft, перелічених у розділі "застосовується до"

Посилання

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

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.