quot;ORA-01722quot; - Número Inválido

Delphi

05/05/2004

Estou desenvolvendo um sistema em DBExpress(SqlQuery + DataSetProvider + ClietDataSet) e o mesmo está sendo desenvolvido no windows 2000/98. Tudo funciona perfeitamente. Então, quando coloco o sistema pra rodar em windows XP ou 2000 Server, ocorre o erro ´ORA-01722´ - Número Inválido, no momento do ApplyUpdates(0).

Estou utilizando Delphi 7.0 e Oracle 8i

Obs: O sistema só consegue gravar os dados no XP e no 2000 SERVER com comando de manipulação de dados (INSERT INTO, UPDATE...), entretanto, se colocarmos Qry.Insert -> Adicionar os valores -> qry.post --> qry.Applyupdates(Nº erros), ele não grava e gera o erro que foi descrito anteriormente.

Grato


Rômulo Barros

Rômulo Barros

Curtidas 0

Respostas

Rômulo Barros

Rômulo Barros

05/05/2004

e logo após este erro ´ORA-01722´ Ocorre o erro: [color=red:56d54b5edf]Unable To Find Record[/color:56d54b5edf]


GOSTEI 0
Leandro_si

Leandro_si

05/05/2004

INVALID_NUMBER Tentativa de usar algo diferente de um número onde havia essa exigência. ORA-01722 / -1722 [b:d47d910ec0] Retirado: http://www.absoluta.org/rdbms/rdbms_plsql_error.htm[/b:d47d910ec0]

da uma olhada... derepente... pode te ajudar...


GOSTEI 0
Rômulo Barros

Rômulo Barros

05/05/2004

Valewu!!!!1 :oops:


GOSTEI 0
Wagnerpb

Wagnerpb

05/05/2004

Caro amigo...
Quando se acessa usando BDE, ela faz a conversão dos caracteres, no caso do acesso via DBExpress, isso não ocorre por isso é necessário setar os parametros...

Coloquei um SQlQuery com a seguinte linha:

ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ´.,´

E no evento AfterConnect do componente SQLConnection chamei o método ExecSQl do SQLQuery, foi a única solução que encontrei...


É provável que tb ocorra algo parecido com datas nesse caso vc vai precisar setar outro parametro, acho que NLS_DATE_FORMAT, não sei ao certo se é esse...


GOSTEI 0
POSTAR