por Cesar Cassiano Schimanco

A conversão de um tipo de dados varchar em um tipo de dados datetime resultou em um valor fora do intervalo

Este erro normalmente é gerado quando o Idioma da maquina do desenvolvedor é diferente do servidor. Neste caso, a falha é na conversão de alguma data, como a própria mensagem diz. Ou seja, o Idioma do SQL Server é diferente do idioma da Aplicação. E para resolver isso, basta definir o idioma da aplicação no Web.config e o idioma do usuário no SQL.

Alterar idioma no web.config utilizando o Globalization:

<configuration>
    <system.web>
        <globalization culture="pt-BR" uiCulture="pt-BR" />
    </system.web>
</configuration>

Para modificar o idioma (login) do Sql Server, basta executar as linhas abaixo.

Exec sp_defaultlanguage 'usuário', 'idioma'
Reconfigure

 

Mudando idioma (login) do Sql Server para português

Exec sp_defaultlanguage 'test1', 'Português (Brasil)'
Reconfigure

Mudando idioma (login) do Sql Server para inglês

Exec sp_defaultlanguage 'sa', 'us_english'
Reconfigure -- Atualiza

 

Descobrir Idioma atual

Select @@langid, @@language

Ver idiomas disponíveis

EXEC sp_helplanguage

 

Erro de referência:
The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.


 

Server Error in '/' Application.

A conversão de um tipo de dados varchar em um tipo de dados datetime resultou em um valor fora do intervalo.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SqlClient.SqlException: A conversão de um tipo de dados varchar em um tipo de dados datetime resultou em um valor fora do intervalo.

 

Comentários

Carregando comentários

Postar um novo comentário



Processando...