terça-feira, 4 de novembro de 2008

ERRO: Conversion of a char data type to a datetime data

Este erro ocorre na conversão de datas de string para datetim, essencialmente tem a ver com as definições locais. Ocorre quando introduzimos uma data do tipo "22-03-1953".

O que acontece é que provavelmente os setings defenidos no SQL Server, as datas estão configuradas como mm-dd-yyyy. Ou seja como ele interpreta 22 como sendo o mês, está claramente "out-of-range".

"Server Error in '/SPA' Application.

The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.

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: The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Podemos resolver de duas formas. A primeira é converter a data no código para o formato pretendido.

A melhor solução é ir ao SQL SERVER, e alterar as propriedades do utilizador, ajustando a opção Default Language para Portugês.

No caso de a aplicação ser em ASP .NET o utilizador para o qual se deve alterar esta propriedade é o ASPNET

0 comentários :

Enviar um comentário