CORRECÇÃO: Mensagem de erro ao analisar um arquivo de rastreamento em Orientador de ajuste de mecanismo de banco de dados no SQL Server 2008: ? erro converter dados tipo varchar em datetime ?

Traduções deste artigo Traduções deste artigo
ID do artigo: 974289 - Exibir os produtos aos quais esse artigo se aplica.
A Microsoft distribui correções do Microsoft SQL Server 2008 como um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todas as correções segurança que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Considere o seguinte cenário:
  • No Microsoft SQL Server 2008, você criar um procedimento armazenado que possui um parâmetro do tipo de dados DateTime.
  • Você inicia um rastreamento para capturar o RPC: Iniciando e RPC: concluído eventos quando você executa o procedimento armazenado. Você pode fazer isso usando o SQL Server Profiler ou usando o rastreamento do lado do servidor para a execução.
  • No banco de dados mecanismo ajuste Advisor (DTA), você criar uma nova sessão usando o arquivo de rastreamento que você capturados.
Nesse cenário, quando você analisar o arquivo de rastreamento, você receberá a seguinte mensagem de erro:

Msg 8114, nível 16, estado 5, procedimento MyProc, linha 0
Erro ao converter dados digite varchar em datetime.

Observação Esse problema não ocorre se você capturar SQL:BatchStarting e eventos SQL:BatchCompleted no rastreamento.

Causa

Esse problema ocorre porque o rastreamento usa um valor de texto incorreto para o parâmetro DateTime. O valor de texto que usa o rastreamento tem uma precisão maior que o tipo de dados DateTime.

Por exemplo, o rastreamento usa um valor de texto semelhante ao seguinte como um parâmetro do tipo de dados DateTime:
exec dbo.MyProcedure @var='2009-07-24 20:25:36.4900000'
portanto, o problema ocorre quando você analisar o rastreamento na DTA.

Resolução

A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 4 para o SQL Server 2008 Service Pack 1. Para obter mais informações sobre esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
973602Pacote de atualizações cumulativas 4 para SQL Server 2008 Service Pack 1
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções segurança que foram incluídas com o SQL Server 2008 anteriores corrigir lançamento. A Microsoft recomenda que você considere a aplicação a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
970365Compilações do SQL Server 2008 que foram lançadas lançamento após o lançamento do SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008 hotfixes são criados para service packs do SQL Server específicos. Você deve aplicar um hotfix do SQL Server 2008 Service Pack 1 para uma instalação do SQL Server 2008 Service Pack 1. Por padrão, qualquer hotfix fornecidas em um SQL Server service pack está incluído no service pack seguinte do SQL Server.

Como Contornar

Para contornar esse problema, use um dos seguintes métodos:

Método 1


Modifique o procedimento armazenado para usar o tipo de dados DateTime2 para o parâmetro.

Método 2

Truncar parte do valor do parâmetro DateTime milissegundos antes de passá-lo para o procedimento armazenado.

Situação

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

Referências

Para obter mais informações sobre o modelo incremental de serviços para o SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
935897Há um modelo incremental de serviços da equipe do SQL Server para fornecer hotfixes para problemas relatados


Para obter mais informações sobre o esquema para nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
822499Novo esquema para nomeação para pacotes de atualização de software do Microsoft SQL Server


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

Propriedades

ID do artigo: 974289 - Última revisão: segunda-feira, 28 de setembro de 2009 - Revisão: 1.1
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Workgroup
Palavras-chave: 
kbmt kbsurveynew kbhotfixrollup kbfix kbpubtypekc kbqfe kbexpertiseadvanced kbhotfixserver KB974289 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: 974289

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