Update: Falsche Daten werden der XML-Datei geschrieben, wenn Sie "OracleDataReader.GetBytes"-Methode zum Lesen einer raw-Spalteninhalts in.NET Framework 2.0 verwenden

Fehler: #50000940 (SQL Hotfix)

Problembeschreibung

Das folgende Szenario. Sie entwickeln eine Microsoft.NET Framework 2.0-basierte Anwendung mit Microsoft Visual Studio 2005. In der Anwendung verwenden Sie .NET Oracle-Datenanbieter zum Herstellen einer Oracle 9i-Datenbank oder einer Oracle 10 g-Datenbank. In der Datenbank ist eine Tabelle, die eine XML-Datei in einer long raw-Spalte gespeichert. Die Größe der XML-Datei ist größer als 8 KB. Mithilfe die Methode "OracleDataReader.GetBytes" long raw-Spalte in einer XML-Datei gelesen. In diesem Szenario werden falsche Daten in die Datei geschrieben. Einige Teile der XML-Datei können daher nicht analysiert werden.

Ursache

Die XML-Datei wird in Blöcken gespeichert. Ein Block ist eine Seite mit einer Größe von 8 KB. Wenn die Methode die Daten liest, wird das Objekt OracleDataReader long raw Daten in Blöcken gelesen. Wenn die Datenmenge größer als 8 KB ist, muss das Objekt mehrere Abschnitt lesen. Da jeder Block 8 Bytes Kopfzeileninformationen Anfang verfügt, gibt das Objekt fälschlicherweise die Headerinformationen als Rohdaten.

Problemlösung

Hotfix-Informationen

Ein unterstützter Hotfix ist inzwischen von Microsoft erhältlich. Es soll jedoch nur das Problem beheben, das in diesem Artikel beschrieben wird. Wenden Sie es nur auf Systeme an, bei denen dieses spezielle Problem auftritt. Dieser Hotfix wird möglicherweise noch getestet. Wenn Ihr System durch dieses Problem nicht schwerwiegend beeinträchtigt ist, empfehlen wir, das nächste Servicepack für Microsoft.NET Framework 2.0 warten, das diesen Hotfix enthält.

Wenn dieses Problem sofort beheben möchten, wenden Sie sich an Microsoft Support Services, um den Hotfix zu erhalten. Eine vollständige Liste der Telefonnummern des Microsoft Product Support Services und Informationen zu den Supportkosten finden Sie auf der folgenden Microsoft-Website:Hinweis In bestimmten Fällen können Gebühren, die normalerweise für Support-Anrufe anfallen abgebrochen werden, wenn ein Microsoft-Supportmitarbeiter feststellt, dass ein bestimmtes Update Ihr Problem behebt. Die normalen Supportkosten gilt für zusätzliche Supportfragen und Probleme, die nicht für das betreffende Update qualifizieren.

Voraussetzungen

Sie müssen das.NET Framework 2.0 installiert, um diesen Hotfix anwenden.

Informationen zum Neustart

Sie müssen den Computer neu starten, nachdem Sie diesen Hotfix anwenden.

Informationen zur Registrierung

Sie haben nicht die Registrierung ändern.

Hotfix-Informationen

Dieser Hotfix enthält nur die Dateien, die in diesem Artikel beschriebenen Probleme zu beheben. Dieser Hotfix enthalten nicht alle Dateien, die Sie benötigen, um ein Produkt vollständig auf den neuesten Stand zu aktualisieren.
Die englische Version dieses Hotfixes weist Dateiattribute (oder spätere Attribute), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie die Dateiinformationen anzeigen, werden sie in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu finden, verwenden Sie die Registerkarte Zeitzone unter Datum und Uhrzeit in der Systemsteuerung.
DateinameDateiversionDateigrößeDatumZeitPlattform
Mscordacwks.dll2.0.50727.827802,30403-07:54x86
Mscorjit.dll2.0.50727.827326,65603-07:54x86
Mscorlib.dll2.0.50727.8274,308,99203-07:54x86
Mscorpe.dll2.0.50727.827102,91203-07:54x86
Mscorwks.dll2.0.50727.8275,634,04803-07:54x86
Normalization.dll2.0.50727.82715,36003-07:54x86
Normidna.nlpPC59,34203-07:54PC
Normnfc.nlpPC45,79403-07:54PC
Normnfd.nlpPC39,28403-07:54PC
Normnfkc.nlpPC66,38403-07:54PC
Normnfkd.nlpPC60,29403-07:54PC
Peverify.dll2.0.50727.827136.19203-07:54x86
Sos.dll2.0.50727.827382,46403-07:54x86
System.data.dll2.0.50727.8272,902,01603-07:54x86
System.data.oracleclient.dll2.0.50727.827482,30403-07:54x86

PROBLEMUMGEHUNG

Um dieses Problem zu umgehen, anstelle der OracleDataReader.GetOracleBinary -Methode "OracleDataReader.GetBytes" -Methode long raw-Spalte zu lesen.

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

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: 934058 – Letzte Überarbeitung: 14.01.2017 – Revision: 1

Feedback