CORRECÇÃO: caracteres nulos podem aparecer em partes da seqüência que é retornado quando você usar a classe "System.Data.OracleClient.OracleDataReader" para retornar os resultados de uma consulta no .NET Framework 2.0

Traduções deste artigo Traduções deste artigo
ID do artigo: 948867 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

No Microsoft .NET Framework 2.0, você usar a classe System.Data.OracleClient.OracleDataReader para retornar os resultados de uma consulta a um campo do tipo de dados LONG em um banco de dados Oracle 10 g. Se a seqüência de caracteres for maior que 8,162 caracteres, caracteres nulos podem aparecer em partes da seqüência que é retornado.

Causa

Esse problema ocorre devido a um problema no namespace System.Data.OracleClient . O namespace System.Data.OracleClient é o provedor de dados Oracle gerenciado. O provedor de dados Oracle gerenciado usa o cliente Oracle nativo é instalado no computador. Para ler os dados contidos nos campos LONG , o provedor de dados Oracle gerenciado passa o seguinte para o cliente Oracle nativo:
  • Uma função de retorno de chamada
  • Um ponteiro para um buffer não-gerenciado especial
O tamanho do buffer de não gerenciado é 8 kilobytes (KB). O cliente Oracle nativo usa essa função de retorno de chamada para gravar os dados em partes para o buffer não-gerenciado. Em cada chamada para a função, o tamanho de bloco que está escrito para o buffer não gerenciado é fornecido.

A versão atual do namespace System.Data.OracleClient incorretamente assume que todos os buffers de bloco exceto o último são totalmente preenchidos. Essa suposição está correta apenas nas versões do cliente Oracle anteriormente que versão 10 g. No Oracle 10 g, buffers antes de um último pode ser apenas parcialmente preenchido, e qualquer bytes nulos do final de cada buffer podem ser lido e processados como caracteres nulos incorretamente.

Resolução

Informações sobre o hotfix

Para resolver esse problema, instale o hotfix mencionado no seguinte artigo na Base de dados de Conhecimento da Microsoft:
948815Disponibilidade do pacote .NET Framework 2.0 Service Pack 1 hotfix cumulativo para System.Data.dll e System.Data.OracleClient.dll do

Pré-requisitos

Você deve ter o .NET Framework 2.0 Service Pack 1 instalado para aplicar esse hotfix.

Requisitos de reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix.

Informações sobre a substituição do hotfix

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário no item Data e hora no painel de controle.
O .NET Framework 2.0, x 86 versões
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.Data.dll2.0.50727.18132,998,27204-Fevereiro de 200820: 49x 86
System.Data.OracleClient.dll2.0.50727.1813484,35204-Fevereiro de 200820: 49x 86
O .NET Framework 2.0, versões x 64
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.Data.dll2.0.50727.18132,998,27204-Fevereiro de 200820: 49x 86
System.Data.OracleClient.dll2.0.50727.1813484,35204-Fevereiro de 200820: 49x 86
System.Data.dll2.0.50727.18103,113,47214 De janeiro de 200815: 36x 64
System.Data.OracleClient.dll2.0.50727.1810499,71214 De janeiro de 200815: 36x 64
O .NET Framework 2.0, versões com base em Itanium
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.Data.dll2.0.50727.18132,998,27204-Fevereiro de 200820: 49x 86
System.Data.OracleClient.dll2.0.50727.1813484,35204-Fevereiro de 200820: 49x 86
System.Data.dll2.0.50727.18133,208,19204-Fevereiro de 200817: 25IA-64
System.Data.OracleClient.dll2.0.50727.1813503,80804-Fevereiro de 200817: 25IA-64

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Mais Informações

Para obter mais informações sobre o tipo de dados Oracle LONG , visite o seguinte site da Microsoft Developer Network:
http://msdn2.microsoft.com/en-us/library/yk72thhd.aspx
Para obter mais informações sobre terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software
Os produtos de terceiros mencionados neste artigo são fabricados por empresas que são independentes da Microsoft. Microsoft não oferece garantia, implícita ou não, sobre o desempenho ou confiabilidade desses produtos.

Propriedades

ID do artigo: 948867 - Última revisão: quarta-feira, 2 de abril de 2008 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 2.0
Palavras-chave: 
kbmt kbexpertiseadvanced kbpubtypekc kbqfe kbhotfixserver KB948867 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 948867

Submeter comentários

 

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