Applies ToSQL 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

Problembeschreibung

Angenommen, Sie verfügen über eine Microsoft SQL Server-Tabelle, auf der mindestens ein Index basiert. Wenn Sie die Tabelle Abfragen, kann SQL Server inkonsistente Daten Abstände für char-und binary-Spalten durchführen. Das inkonsistente Verhalten für das Zurückgeben von Leerzeichen am Ende der Datenspalten char und Binary hängt von den folgenden Bedingungen ab:

  • Die Einstellungen der ANSI_PADDING, wenn Spalten in der SQL Server-Tabelle erstellt werden.

  • Die Entscheidung, ob Tabellenüberprüfung oder Indexsuche für die Spalten durchgeführt werden soll.

Ursache

In bestimmten Szenarien kann SQL Server eine Optimierung durchführen, die es ermöglicht, viele Vorgänge zu umgehen, um eine schnellere Datenzustellung zu ermöglichen. Das Problem tritt auf, weil SQL Server nicht erkennt, dass die Optimierung für das obige Szenario nicht angewendet werden kann.

Weitere Informationen

Dieses Verhalten von SQL Server entspricht nicht dem Verhalten, das im folgenden Artikel beschrieben wird: Verwenden von char-und varchar-Daten.

Wenn ANSI_PADDING aktiviert ist, wenn eine char NULL-Spalte erstellt wird, verhält es sich wie eine char not NULL-Spalte: Werte werden mit der rechten Maustaste auf die Größe der Spalte aufgefüllt. Wenn ANSI_PADDING deaktiviert ist, wenn eine char NULL-Spalte erstellt wird, verhält es sich wie eine varchar-Spalte, wobei ANSI_PADDING auf OFF festzulegen: nachgestellte Leerzeichen werden abgeschnitten.

Fehlerbehebung

Dieses Problem wurde in den folgenden kumulativen Updates für SQL Server behoben:

       Kumulatives Update 2 für SQL Server 2017

       Kumulatives Update 9 für SQL Server 2016

       Kumulatives Update 6 für SQL Server 2016 SP1

       Kumulatives Update 8 für SQL Server 2014 SP2

       Kumulatives Update 7 für SQL Server 2014 SP1

Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und alle Sicherheitsupdates, die im vorherigen kumulativen Update enthalten waren. Schauen Sie sich die neuesten kumulativen Updates für SQL Server an:

Neuestes Kumulatives Update für SQL Server 2017

Neuestes Kumulatives Update für SQL Server 2016

Neuestes Kumulatives Update für SQL Server 2014

Status

Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.

Informationsquellen

Erfahren Sie mehr über die Terminologie, mit der Microsoft Softwareupdates beschreibt.

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.