5
respostas

ora-01858

O erro ORA-01858 sempre acontece quando eu escrevo qualquer comando que contenha a data, mas quando eu copio e colo a instrução do curso ele roda de forma correta, seria possível eu estar usando a aspas errada? Algo assim, pq eu digito igualzinho como esta no curso e n funciona, mas ao copiar e colar funciona certinho

5 respostas

Fala Grande,

Posta por favor os códigos que deram certo e o que deu o erro.

Atenciosamente.

Esse é o código que eu digito e da erro. Acho que estou digitando algo errado.

update compras set valor = 100, observacoes = 'Uma compra comum' where data not between '01-JAN-2010' and '01-APR-2010';

Bom dia, tenta com este comando.

update compras set valor = 100, observacoes = 'Uma compra comum' where data not between to_date('01-JAN-2010', 'YYYY-MM-DD') and o_date('01-APR-2010', 'YYYY-MM-DD');

O que ocorre é que o Oracle deve estar entendendo o que você digitou como String não como data com este comando ele converte para data e deve funcionar.

Agora não consigo te explicar por que ao copiar e colar o código funciona.

atenciosamente.

Boa tarde,

Como está este caso funcionou?

Atenciosamente.

Isso aconteceu comigo,

A linguagem padrão Oracle instalado na minha maquina era brasileiro e o código que estava inserindo era padrão americano. quando ele validava o mês da data (no seu caso 'APR') retornava o erro que você citou.

Verifique o padrão de linguagem que está instalado na sua maquina, e se estiver brasileira substitua no comando o mês APR, em inglês, para ABR, em português.