Erro ao gravar um adocommand no delphi
Bom dia, tenho um sistema que grava o sql em tempo de execução e um campo tipo data no oracle era descrito assim:
´ULTIMA_ATUALIZ=´+#39+datetostr(date)+39+´, no win98 grava sem problemas, mas tive que mudar para xp e me da o erro ora-01843 not a valid month.
Alguém saberia como converter para gravar.
Obrigado
Ailton Furtado
´ULTIMA_ATUALIZ=´+#39+datetostr(date)+39+´, no win98 grava sem problemas, mas tive que mudar para xp e me da o erro ora-01843 not a valid month.
Alguém saberia como converter para gravar.
Obrigado
Ailton Furtado
Ajfurtado
Curtidas 0
Respostas
Jairroberto
23/06/2005
Olá, Ailton!
Nunca trabalhei com Oracle, mas certamente ele possui regras para a passagem de valores do tipo ´Date´ pela DML. No Firebird, por exemplo, é assim:
mm/dd/yyyy
dd.mm.yyyy
yyyy-mm-dd
ou seja, dependendo do separador utilizado o Firebird interpreta a data recebida em uma ordem de dia, mês e ano diferente.
Verifique a documentação do Oracle para saber como funciona e ajuste o seu comando SQL como, por exemplo:
Format(´ULTIMA_ATUALIZ=¬s´, [QuotedStr(FormatDateTime(´dd.mm.yyyy´, Date))]);
Um abraço,
Jair
Nunca trabalhei com Oracle, mas certamente ele possui regras para a passagem de valores do tipo ´Date´ pela DML. No Firebird, por exemplo, é assim:
mm/dd/yyyy
dd.mm.yyyy
yyyy-mm-dd
ou seja, dependendo do separador utilizado o Firebird interpreta a data recebida em uma ordem de dia, mês e ano diferente.
Verifique a documentação do Oracle para saber como funciona e ajuste o seu comando SQL como, por exemplo:
Format(´ULTIMA_ATUALIZ=¬s´, [QuotedStr(FormatDateTime(´dd.mm.yyyy´, Date))]);
Um abraço,
Jair
GOSTEI 0