FIX: nelle parti della stringa che viene restituito quando si utilizza la classe "System.Data.OracleClient.OracleDataReader" per restituire i risultati di una query in .NET Framework 2.0 vengono visualizzati caratteri null

Traduzione articoli Traduzione articoli
Identificativo articolo: 948867 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

In Microsoft .NET Framework 2.0, è possibile utilizzare la classe System.Data.OracleClient.OracleDataReader per restituire i risultati di una query a un campo il tipo di dati LONG in un database Oracle 10 g. Se la stringa è più lunga di 8,162 caratteri, caratteri di null può visualizzati nella parte della stringa restituita.

Cause

Questo problema si verifica a causa di un problema nello spazio dei nomi System.Data.OracleClient . Lo spazio dei nomi System.Data.OracleClient è il gestito provider di dati di Oracle. Il provider di dati di Oracle gestito utilizza il client nativo di Oracle installato nel computer. Per leggere i dati contenuti nei campi LONG , il provider di dati Oracle gestito restituisce quanto segue al client di Oracle nativo:
  • Una funzione di richiamata
  • Un puntatore a un buffer non gestito speciali
La dimensione del buffer non gestito è di 8 kilobyte (KB). Il client Oracle nativo questa funzione di callback viene utilizzata per scrivere i dati in blocchi al buffer non gestito. In ogni chiamata alla funzione, viene fornita la lunghezza del blocco scritto in un buffer non gestito.

La versione corrente dello spazio dei nomi System.Data.OracleClient in modo non corretto si presuppone che tutti i buffer tranne l'ultimo vengono riempite completamente. Questo presupposto è corretto solo nelle versioni del client Oracle precedenti alla versione 10 g. In Oracle 10 g, il buffer prima l'ultimo può essere completato solo parzialmente e qualsiasi byte null alla fine di ogni buffer possono essere letto ed elaborati come caratteri null in modo non corretto.

Risoluzione

Informazioni sull'hotfix

Per risolvere questo problema, è necessario installare l'hotfix menzionato nel seguente articolo della Microsoft Knowledge Base riportato di seguito:
948815Disponibilità del cumulativo di hotfix di .NET Framework 2.0 successivo al Pack 1 per System.Data.dll e System.Data.OracleClient.dll

Prerequisiti

È necessario .NET Framework 2.0 Service Pack 1 per applicare questo aggiornamento rapido (hotfix).

Necessità di riavvio

Non è necessario riavviare il computer dopo avere applicato questo aggiornamento rapido (hotfix).

Informazioni sulla sostituzione della correzione

Questo aggiornamento rapido (hotfix) non sostituisce eventuali altri hotfix.

Informazioni sui file

La versione di lingua inglese di questo aggiornamento rapido (hotfix) presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e le ore per questi file sono indicati in UTC (Coordinated Universal Time). Quando si visualizzano le informazioni sul file, viene convertito in ora locale. Per calcolare la differenza tra ora UTC e l'ora locale, utilizzare la scheda fuso orario dello Data e ora nel Pannello di controllo.
.NET Framework 2.0, versioni x 86
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensione del fileDataOraPiattaforma
System.Data.dll2.0.50727.18132,998,27204-Febbraio 200820: 49x 86
System.Data.OracleClient.dll2.0.50727.1813484,35204-Febbraio 200820: 49x 86
.NET Framework 2.0, versioni x 64
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensione del fileDataOraPiattaforma
System.Data.dll2.0.50727.18132,998,27204-Febbraio 200820: 49x 86
System.Data.OracleClient.dll2.0.50727.1813484,35204-Febbraio 200820: 49x 86
System.Data.dll2.0.50727.18103,113,47214-Gen-200815: 36x 64
System.Data.OracleClient.dll2.0.50727.1810499.71214-Gen-200815: 36x 64
.NET Framework 2.0, versioni basate su Itanium
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensione del fileDataOraPiattaforma
System.Data.dll2.0.50727.18132,998,27204-Febbraio 200820: 49x 86
System.Data.OracleClient.dll2.0.50727.1813484,35204-Febbraio 200820: 49x 86
System.Data.dll2.0.50727.18133,208,19204-Febbraio 200817: 25IA-64
System.Data.OracleClient.dll2.0.50727.1813503.80804-Febbraio 200817: 25IA-64

Status

Microsoft ha confermato che questo problema riguarda i prodotti sono elencati nella sezione "Si applica a".

Informazioni

Per ulteriori informazioni sul tipo di dati Oracle LONG , il seguente sito Web MSDN:
http://msdn2.microsoft.com/en-us/library/yk72thhd.aspx
Per ulteriori informazioni sulla terminologia di aggiornamento software, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
824684Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft
I prodotti di terze parti che in questo articolo viene descritto sono forniti da produttori indipendenti. Microsoft non rilascia alcuna garanzia, implicita o esplicita, sulle prestazioni o all'affidabilità di questi prodotti.

Proprietà

Identificativo articolo: 948867 - Ultima modifica: mercoledì 2 aprile 2008 - Revisione: 1.0
Le informazioni in questo articolo si applicano a:
  • Microsoft .NET Framework 2.0
Chiavi: 
kbmt kbexpertiseadvanced kbpubtypekc kbqfe kbhotfixserver KB948867 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 948867
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com