Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal,
Toda vez que coloco a data atual 13/03/2010 ou data futura dar esse erro:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC SQL Server Driver]
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value. /painel/inserirnoticiasnovas.asp, line 37
Mas se coloco data antiga, um dia atrás, tipo 12/03/2010 ele insere normal, por que esse erro? Minha SQL:
vdata=request.form("data")
dia = day(vdata)
mes = month(vdata)
ano = year(vdata)
data_sql = dia & "-" & mes & "-" & ano
executar = "insert into noticias (conteudo, data, fonte, titulo, datar) values ('"& VarDesc &"','"& vdata &"','"& vfonte &"','"& vtitulo &"','"& data_sql &"')"O que deve ser? O campo datar está como datatime
Linha 37: Set rsbusca=Conexao.Execute(executar)
converte ele antes , formata antes de inserir
Escolha a melhor função (melhor dizendo, a adequada) para seu banco de dados:
Formato: aaaa-mm-dd
<%
Function ConverterDataBanco(ConDataBanco)
ConDataBanco = Year(ConDataBanco) &"-"& Right("0"&Month(ConDataBanco),2) &"-"& Right("0"&Day(ConDataBanco),2)
ConverterDataBanco = ConDataBanco
End Function
Response.Write(ConverterDataBanco(Date()))
%>
Formato: dd-mm-aaaa
<%
Function ConverterDataBanco(ConDataBanco)
ConDataBanco = Right("0"&Day(ConDataBanco),2) &"-"& Right("0"&Month(ConDataBanco),2) &"-"& Year(ConDataBanco)
ConverterDataBanco = ConDataBanco
End Function
Response.Write(ConverterDataBanco(Date()))
%>
Formato: mm-dd-aaaa
<%
Function ConverterDataBanco(ConDataBanco)
ConDataBanco = Right("0"&Month(ConDataBanco),2) &"-"& Right("0"&Day(ConDataBanco),2) &"-"& Year(ConDataBanco)
ConverterDataBanco = ConDataBanco
End Function
Response.Write(ConverterDataBanco(Date()))
%>
Formato: mm/dd/aaaa
<%
Function ConverterDataBanco(ConDataBanco)
ConDataBanco = Right("0"&Month(ConDataBanco),2) &"/"& Right("0"&Day(ConDataBanco),2) &"/"& Year(ConDataBanco)
ConverterDataBanco = ConDataBanco
End Function
Response.Write(ConverterDataBanco(Date()))
%>
beleza pessoal, funcinou, obrigado!
Esquisito dar o erro em uma data especifica.
Você esta usando qual bando de dados?
Se for SQL Server qual collation?
Faça um teste e inverta a data assim:
data_sql = ano & "-" & mes & "-" & dia