CORREÇÃO: O Driver JDBC 3.0 do Microsoft SQL Server retorna valores de data incorreto com o JRE 1.7

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

Neste artigo

Sintomas

Considere o seguinte cenário:
  • Você tem um aplicativo de Java que usa o Driver de JDBC Microsoft SQL Server versão 3.0 e Java Runtime Environment versão 1.7 (JRE 1.7) para se conectar a um banco de dados SQL Server.
  • O aplicativo usa qualquer uma das três funções a seguir para obter uma data do banco de dados:
    • getDate()
    • getTimeStamp()
    • getDateTimeOffset()
  • O tipo de dados no banco de dados de SQL Server éDATA, DATETIME2, ou DATETIMEOFFSET.
Nesse cenário, a função retorna um valor de data incorreto.

Anotações
  • Esse problema só ocorre quando o valor de data que é retornado pela função é mais recente do que o ano 1582 no calendário gregoriano.
  • Esse problema não ocorre se o aplicativo usa um destes procedimentos:
    • A versão do Driver JDBC do Microsoft SQL Server 3.0 e o JRE 1.5/JRE 1.6
    • O Driver de JDBC Microsoft SQL Server versão 2.0 e 1.7 do JRE

Causa

O comportamento das funções que são descritos na seção "Sintomas" varia de acordo com o calendário do Java APIs. A alteração no comportamento dessas APIs causado Microsoft SQL Server Driver JDBC versão 3.0 retornar valores incorretos.

Resolução

O Driver de JDBC Microsoft SQL Server versão 3.0 foi modificado para que as funções que são descritas na seção "Sintomas" retornam valores corretos, independentemente da versão do JRE. O Driver de JDBC Microsoft SQL Server versão 4.0 também conterá essa modificação.

Informações sobre o hotfix

Um hotfix compatível foi disponibilizado pela Microsoft. No entanto, esse hotfix destina-se apenas a corrigir o problema descrito neste artigo. Aplica este hotfix somente aos sistemas que apresentarem o problema descrito neste artigo. Este hotfix pode receber testes adicionais. Portanto, se esse problema não o prejudicar, recomendamos que você aguarde a próxima atualização de software que contém esse hotfix.

Se o hotfix está disponível para download, há uma seção de "Download de Hotfix disponível" na parte superior deste artigo do Knowledge Base. Se não aparecer nesta seção, entre em contato com o suporte e atendimento ao cliente Microsoft para obter o hotfix.

Observação Se ocorrerem problemas adicionais, ou se for necessária a qualquer solução de problemas, você talvez precise criar uma solicitação de serviço. Os custos de suporte normais serão aplicados a questões de suporte adicional e problemas que não sejam específicos deste hotfix. Para uma lista completa dos números de telefone de suporte e atendimento ao cliente da Microsoft ou para criar uma solicitação de serviço, visite o seguinte site da Microsoft:
http://support.microsoft.com/contactus/?ws=support
Observação O formulário "Download de Hotfix disponível" exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma, é porque um hotfix não está disponível para esse idioma.

Informações sobre a instalação

Para instalar esse hotfix, siga estas etapas:

WINDOWS
  1. Leia o arquivo License. txt deste hotfix.
  2. Baixe e use o Driver de JDBC Microsoft SQL Server versão 3.0 para aceitar esta licença.
  3. Baixe o sqljdbc_<version>_enu.exe o arquivo para um diretório temporário.</version>
  4. Execute o sqljdbc_<version>_enu.exe arquivo.</version>
  5. Quando for solicitado, digite um diretório de instalação.
    Recomendamos que você descompactar os arquivos compactados (. zip) usando o seguinte diretório padrão:
    %ProgramFiles%\Microsoft SQLServer JDBC Driver 3.0
  6. Depois que o pacote é descompactado, abra o sistema de Ajuda do JDBC, abrindoInstallationDirectory\Sqljdbc_ de Driver JDBC da SQL Server 3.0 \Microsoft<version>\<language>\help\default.htm. O sistema de Ajuda do JDBC exibe o sistema de Ajuda no navegador da web.</language> </version>

UNIX
  1. Leia o arquivo License. txt deste hotfix.
  2. Baixe e use o Driver de JDBC Microsoft SQL Server versão 3.0 para aceitar esta licença.
  3. Baixe o sqljdbc_<version>_enu.tar.gz o arquivo para um diretório temporário.</version>
  4. Para descompactar o tar que estiverem "zipadas", visite o diretório onde você deseja descompactar o driver e o tipo:
    gzip -d de sqljdbc_<version>_enu.tar.gz</version>
  5. Para descompactar o tar, movê-lo para o diretório onde você deseja instalar o driver e o tipo:
    tar - xf sqljdbc_<version>_enu.tar</version>
  6. Depois que o pacote é descompactado, abra o sistema de Ajuda do JDBC, abrindoInstallationDirectory\Sqljdbc_ de Driver JDBC da SQL Server 3.0 \Microsoft<version>\<language>\help\default.htm. O sistema de Ajuda do JDBC exibe o sistema de Ajuda no navegador da web.</language> </version>


Informações sobre o

Este hotfix é inclusive de hotfixes anteriores para o Driver de JDBC Microsoft SQL Server versão 3.0.

Informações sobre o arquivo

A versão global deste hotfix apresenta os atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas destes arquivos estão listadas no tempo Universal Coordenado (UTC). Quando você visualiza as informações do arquivo, ele será convertido para a hora local. Para saber a diferença entre o UTC e a hora local, use o Fuso horário Guia de Data e hora item no painel de controle.

Recolher esta tabelaExpandir esta tabela
Nome do arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Sqljdbc.jarNão aplicável 518,29408-Dez-201116: 05 Não aplicável
Sqljdbc4.jarNão aplicável 537,56608-Dez-201116: 05 Não aplicável
Xa_install.SQLNão aplicável 37,1208-Dez-201116: 05 Não aplicável
Sqljdbc_xa.dll 3.0.1301.203253,74408-Dez-201116: 05 IA-64.
Sqljdbc_xa.dll 3.0.1301.203131,37608-Dez-201116: 05 x64
Sqljdbc_xa.dll 3.0.1301.203102,19208-Dez-201116: 05 x86
Sqljdbc_auth.dll 3.0.1301.203175,40808-Dez-201116: 05 IA-64.
Sqljdbc_auth.dll 3.0.1301.20387,34408-Dez-201116: 05 x64
Sqljdbc_auth.dll 3.0.1301.20369,93608-Dez-201116: 05 x86




Situação

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

Propriedades

ID do artigo: 2652061 - Última revisão: quinta-feira, 5 de janeiro de 2012 - Revisão: 2.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server Java Database Connectivity Driver 3.0
Palavras-chave: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbautohotfix kbmt KB2652061 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: 2652061

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