Erro ORA-01847 - Data

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
renatalucg
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qua, 26 Out 2011 12:21 pm

Bom dia pessoal.

Preciso de uma ajuda. Estou aprendendo PL/SQL e estou desenvolvendo um relatório.
Estou concatenando dois campos do tipo DATE, onde de um quero pegar a data e de outro quero pegar a hora. Preciso transformar essa concatenação em um outro campo do tipo DATE:

To_Date((dt_lib_mov ||' '|| To_Char(hr_lib_mov, 'hh24:mi:ss')),'dd/mm/rrrr hh24:mi:ss')

Só que ao executar a Query, aparece o erro ora-01847 day of month must be between 1 and last day of month.

Eu tenho um outro campo que fiz dessa forma e não deu erro nenhum. :cry:
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Renata, boa tarde.
Tudo bem?

Você deu um print (dbms_output), nesses dois campos abaixo para ver o que está trazendo?
  • dt_lib_mov
  • hr_lib_mov
Manda pra gente dar uma olhada.
gfkauer
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 389
Registrado em: Ter, 27 Jul 2010 1:34 pm
Localização: Sapiranga - RS
Contato:
Quem falou que programar era fácil??

Quanto mais dificil for a implementação mais valorizado seu trabalho será!

Acessem: www.gfkauer.com.br

Usa assim:

Selecionar tudo

To_Date((to_char(dt_lib_mov, 'dd/mm/rrrr') ||' '|| To_Char(hr_lib_mov, 'hh24:mi:ss')),'dd/mm/rrrr hh24:mi:ss')
O seu erro é concatenar uma data(no formato interno do banco) com um char. Desta forma o sistema tende a fazer bagunça com os formatos...
renatalucg
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 6
Registrado em: Qua, 26 Out 2011 12:21 pm

gfkauer, eu fiz dessa forma e o erro permaneceu...

Trevisolli, descupe ainda estou aprendendo, como que eu uso esse dbms_output?
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 3 visitantes