Update: Fehlermeldung, wenn Sie eine Abfrage ausführen markiert eine Spalte vom Typ Xml in SQL Server 2005: "'? ', hexadezimaler Wert 0xDC55, ist ein ungültiges Zeichen"

Fehler #: 50003553 (SQL Hotfix)
Microsoft stellt Updates für Microsoft SQL Server 2005 als downloadbare Datei. Da die kumulativ sind, enthält jede neue Version alle Hotfixes und alle Sicherheitsupdates, die in früheren SQL Server 2005 enthalten waren.

Problembeschreibung

Microsoft SQL Server 2005 müssen Sie eine Tabelle mit einer Spalte vom Typ Xml. Beim Ausführen einer Abfrage, die Spalte vom Datentyp Xml auswählt, wird eine Fehlermeldung angezeigt. In den folgenden Szenarios können verschiedene Fehlermeldungen angezeigt werden.

Szenario 1

Beim Ausführen der Abfrage in SQL Server Management Studio wird die folgende Fehlermeldung angezeigt:
Fehler beim Ausführen des Batches. Fehlermeldung: '?', hexadezimaler Wert 0xDC55, ist ein ungültiges Zeichen.

Szenario 2

Wenn Sie die Abfrage in einer Anwendung ausführen, die OLE DB-Provider verwendet, wird die folgende Fehlermeldung angezeigt:
[DBNETLIB] [ConnectionRead (recv()).] Allgemeiner Netzwerkfehler. Überprüfen der Netzwerkdokumentation.

Szenario 3

Wenn Sie die Abfrage in einer Anwendung ausführen, den SQLClient-Anbieter verwendet, wird die folgende Fehlermeldung angezeigt:

'?', hexadezimaler Wert 0xDC55, ist ein ungültiges Zeichen.

Szenario 4

Ausführung die Abfrage in einer Anwendung, der SQLNCLI10-Provider verwendet, wird die folgende Fehlermeldung angezeigt:

Protokollfehler im TDS-Datenstrom

Verbindungsaufbau gescheitert

Problemlösung

Kumulative Update-Informationen

SQL Server 2005 Servicepack 2

Wichtig Wenn Sie SQL Server 2005 Service Pack 2 ausführen, müssen Sie dieses Update verwenden.

Die Fehlerbehebung für dieses Problem wurde zuerst im Kumulatives Update 11 für SQL Server 2005 Service Pack 2 veröffentlicht. Für weitere Informationen zu diesem kumulativen Update-Paket, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
958735 kumulative Updatepaket 11 für SQL Server 2005 Service Pack 2
Hinweis Da diese Builds kumulativ sind, enthält jede neue Version alle Hotfixes und alle Sicherheitsupdates, die in früheren SQL Server 2005 enthalten waren. Microsoft empfiehlt, dass Sie prüfen die neueste Update-Version, die diesen Hotfix enthält. Klicken Sie für weitere Informationen auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
937137 der SQL Server 2005 erstellt, die nach der Freigabe von SQL Server 2005 Service Pack 2 veröffentlicht wurden
Microsoft SQL Server 2005-Hotfixes sind für bestimmte SQL Server Servicepacks erstellt. Sie müssen SQL Server 2005 Service Pack 2-Hotfix eine Installation von SQL Server 2005 Service Pack 2 anwenden. Standardmäßig ist jeder Hotfix, der in einem SQL Server Servicepack bereitgestellt wird, in einem nächsten Servicepack für SQL Server enthalten.

SQL Server 2005 Servicepack 3

Wichtig Verwenden Sie dieses Update, wenn Sie SQL Server 2005 Service Pack 3 ausgeführt.


Die Fehlerbehebung für dieses Problem wurde auch in dem kumulativen Update 1 für SQL Server 2005 Service Pack 3 veröffentlicht. Für weitere Informationen zu diesem kumulativen Update-Paket, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
959195 kumulative Updatepaket 1 für SQL Server 2005 Service Pack 3
Hinweis Da diese Builds kumulativ sind, enthält jede neue Version alle Hotfixes und alle Sicherheitsupdates, die in früheren SQL Server 2005 enthalten waren. Microsoft empfiehlt, dass Sie prüfen die neueste Update-Version, die diesen Hotfix enthält. Klicken Sie für weitere Informationen auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
960598 der SQL Server 2005 builds, die nach der Freigabe von SQL Server 2005 Service Pack 3
Microsoft SQL Server 2005-Hotfixes sind für bestimmte SQL Server Servicepacks erstellt. Sie müssen SQL Server 2005 Service Pack 3-Hotfix eine Installation von SQL Server 2005 Service Pack 3 anwenden. Standardmäßig ist jeder Hotfix, der in einem SQL Server Servicepack bereitgestellt wird, in einem nächsten Servicepack für SQL Server enthalten.

Status

Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.

Weitere Informationen

Weitere Dateien geändert werden und Informationen zu Komponenten das kumulative Updatepaket anwenden, das den Hotfix enthalten, der im Microsoft Knowledge Base-Artikel beschrieben, klicken Sie auf die folgenden Artikelnummer der Microsoft Knowledge Base:
958735 kumulative Updatepaket 11 für SQL Server 2005 Service Pack 2

Aufruflisteninformationen

For sqlclient:   at System.Xml.XmlSqlBinaryReader.CheckText(Boolean attr)
at System.Xml.XmlSqlBinaryReader.ImplReadData(BinXmlToken tokenType)
at System.Xml.XmlSqlBinaryReader.ReadDoc()
at System.Xml.XmlSqlBinaryReader.Read()
at System.Xml.XmlWriter.WriteNode(XmlReader reader, Boolean defattr)
at System.Data.SqlTypes.SqlXml.get_Value()
at System.Data.SqlClient.SqlBuffer.get_Value()
at System.Data.SqlClient.SqlDataReader.GetValueInternal(Int32 i)
at System.Data.SqlClient.SqlDataReader.GetValues(Object[] values)
at System.Data.ProviderBase.DataReaderContainer.CommonLanguageSubsetDataReader.GetValues(Object[] values)
at System.Data.ProviderBase.SchemaMapping.LoadDataRow()
at System.Data.Common.DataAdapter.FillLoadDataRow(SchemaMapping mapping)
at System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
at System.Data.Common.DataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at DiagClient.DiagUtil.TestDatabaseConnection(String Provider, String Connection, String SQL, Int32 Timeout, DataSet& ds)

For SQLNCLI10:
at System.Data.OleDb.OleDbDataReader.ProcessResults(OleDbHResult hr)
at System.Data.OleDb.OleDbDataReader.GetRowHandles()
at System.Data.OleDb.OleDbDataReader.ReadRowset()
at System.Data.OleDb.OleDbDataReader.Read()
at System.Data.OleDb.OleDbDataReader.HasRowsRead()
at System.Data.OleDb.OleDbDataReader.NextResult()
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at DiagClient.DiagUtil.TestDatabaseConnection(String Provider, String Connection, String SQL, Int32 Timeout, DataSet& ds)

For SQLOledb:
at System.Data.OleDb.OleDbDataReader.ProcessResults(OleDbHResult hr)
at System.Data.OleDb.OleDbDataReader.GetRowHandles()
at System.Data.OleDb.OleDbDataReader.ReadRowset()
at System.Data.OleDb.OleDbDataReader.Read()
at System.Data.OleDb.OleDbDataReader.HasRowsRead()
at System.Data.OleDb.OleDbDataReader.NextResult()
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at DiagClient.DiagUtil.TestDatabaseConnection(String Provider, String Connection, String SQL, Int32 Timeout, DataSet& ds)

Referenzen

Informationen zur Liste der Builds, die nach SQL Server Service Pack 2 verfügbar sind, klicken Sie auf die folgenden Artikelnummer der Microsoft Knowledge Base:
937137 Liste der Builds, die nach SQL Server 2005 Service Pack 2 veröffentlicht wurde
Weitere Informationen zum inkrementellen Dienstmodell für SQL Server klicken Sie auf die folgenden Artikelnummer der Microsoft Knowledge Base:
935897 erläutert wird ein inkrementelles Dienstmodell steht der SQL Server-Team zu Hotfixes für gemeldete Probleme
Weitere Informationen zu SQL Server 2005 Service Pack 2 finden Sie im folgenden Artikel der Microsoft Knowledge Base:
913089 so erhalten Sie das neueste Servicepack für SQL Server 2005
Weitere Informationen zu neuen Funktionen und Optimierungen in SQL Server 2005 Service Pack 2 finden Sie auf der folgenden Microsoft-Website:Weitere Informationen zum Benennungsschema für SQL Server-Updates klicken Sie auf die folgenden Artikelnummer der Microsoft Knowledge Base:
Neues Benennungsschema für Microsoft SQL Server-Software 822499 Pakete aktualisieren
Um weitere Informationen zur Terminologie für Softwareupdates zu erhalten, klicken Sie auf die folgende Artikelnummer, um den Artikel der Microsoft Knowledge Base anzuzeigen:
824684 Erläuterung von der standardmäßigen Standardbegriffen bei Microsoft Softwareupdates
Eigenschaften

Artikelnummer: 960555 – Letzte Überarbeitung: 13.01.2017 – Revision: 1

Feedback