FIX 不正なデータが書き込まれる XML ファイルに.NET Framework 2.0 では、raw 列を読み取る場合に、OracleDataReader.GetBytes メソッドを使用する場合

Bug # 50000940 (SQL 修正プログラム)

現象

以下の事例で説明します。Microsoft.NET Framework 2.0 ベースのアプリケーションを開発するには、Microsoft Visual Studio 2005 を使用しています。アプリケーションでは、Oracle 9i データベースまたは Oracle 10 g データベースに接続するのには、.NET データ プロバイダーを使用します。データベースに生の長い列に XML ファイルを格納するテーブルがあります。 XML ファイルのサイズは 8 KB よりも大きいです。生の長い列を XML ファイルに読み取りするのにには、 OracleDataReader.GetBytesメソッドを使用します。このシナリオでは、不正なデータがファイルに書き込まれます。したがって、XML ファイルの一部を解析できません。

原因

XML ファイルはチャンクに格納されます。チャンクには、サイズが 8 KB のページです。メソッドは、データを読み取る、ときにOracleDataReaderオブジェクトはチャンク単位での長時間の生データを読み取る。データのサイズが 8 KB より大きい場合は、複数のチャンクを参照するオブジェクトがあります。各チャンクの先頭に 8 バイトのヘッダー情報の表示されているため、オブジェクトを誤って返します生データとヘッダー情報。

解決策

修正プログラムの情報

サポートされている修正プログラムはマイクロソフトから現在入手可能です。ただし、この資料に記載されている問題のみを修正するものです。この特定の問題が発生したシステムにのみ適用してください。この修正プログラムは、今後さらにテストを行うことがあります。この問題で深刻な影響を受けていない場合は、この修正プログラムを含む次の Microsoft.NET Framework 2.0 service pack のリリースを待つことを勧めします。

この問題を解決するには、修正プログラムを入手するのには、Microsoft カスタマー サポート サービスに問い合わせてください。マイクロソフト カスタマー サポート サービスの電話番号とサポートのコストに関する情報の一覧については、次のマイクロソフト Web サイトを参照してください。注: 特別な場合では、まれに通常サポート コールの発生に料金 Microsoft Support 担当者は、特定の更新で問題が解決されると判断した。追加の質問および問題の特定のアップデートの対象にはなりませんが、通常のサポート料金が適用されます。

必要条件

この修正プログラムを適用するのにはインストールされている.NET Framework 2.0 が必要です。

再起動に関する情報

この修正プログラムを適用した後コンピューターを再起動する必要があります。

レジストリ情報

レジストリを変更する必要はありません。

修正プログラム ファイルの情報

この修正プログラムには、この資料に記載されている問題を修正するために必要なファイルのみが含まれています。製品を最新のビルドに更新するために必要なすべてのファイルのこの修正プログラムが含まれていない可能性があります。
修正プログラム (英語版) のファイル属性は次表のとおりです。ただし、これより新しい修正プログラムがリリースされている可能性もあります。各ファイルの日付および時刻は、世界協定時刻 (UTC) で示されています。ファイル情報に表示される時刻は、ローカル時刻に変換されています。UTC とローカル時刻との時差を確認するには、コントロール パネルの [日付と時刻] の [タイム ゾーン] タブを使用してください。
ファイル名ファイル バージョンファイル サイズ日付時刻プラットフォーム
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.nlp該当なし59,34203-07:54該当なし
Normnfc.nlp該当なし45,79403-07:54該当なし
Normnfd.nlp該当なし39,28403-07:54該当なし
Normnfkc.nlp該当なし66,38403-07:54該当なし
Normnfkd.nlp該当なし60,29403-07:54該当なし
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

回避策

この問題を回避するのにには、生の長い列を読み取るOracleDataReader.GetBytesメソッドではなくOracleDataReader.GetOracleBinaryメソッドを使用します。

状況

マイクロソフトは、この問題を「対象製品」セクションに記載されているマイクロソフト製品の問題として認識しています。

詳細

ソフトウェア更新プログラムの用語の詳細については、次の文書番号をクリックして、マイクロソフト サポート技術情報の資料を参照してください。

824684マイクロソフトのソフトウェア更新プログラムを記述するために使用される一般的な用語説明

プロパティ

文書番号:934058 - 最終更新日: 2017/02/02 - リビジョン: 1

Microsoft .NET Framework 2.0

フィードバック