ORA - 01722

22/09/2003

0

Não consigo solucionar o problema ORA - 01722, alguem já passou por algo semelhante?


Marcio.theis

Marcio.theis

Responder

Posts

09/10/2003

Eduardo Pereira

Já tive este erro e tinha a ver com o suporte a línguas estrangeiras do Oracle. A solução foi, para a sessão corrente do Oracle, ajustar os caracteres de separador decimal a agrupamento de dígitos, com o seguinte comando:

alter session set nls_numeric_characters = ´.,´

Com o dbExpress, assim que a conexão é aberta, execute o seguinte:

MinhaConexao.ExecuteDirect(´alter session set nls_numeric_characters = ´´.,´´´);

onde ´MinhaConexao´ é um TSQLConnection. Observe que são duas aspas simples antes e três depois dos caracteres ponto e vírgula.

[]´s
Eduardo Pereira


Responder

27/11/2003

Margaridi

Um campo numérico está recebendo um valor inválido.

Como o Eduardo disse, pode ser problemas de configuração de línguas.

Também, pode ser a configuração local da máquinas (Painel de Controle > Configurações Regionais) que está com formato de moeda diferente do que você está passando na sua aplicação.

Pode ainda, ser uma falha de programação, onde está sendo atribuída uma variável varchar2 para uma variável numérica.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar