DBExpress – Campos numéricos com Oracle

 

Acessar campos numéricos do Oracle com o DBExpress pode apresentar problemas de formatação e o erro ???TDBXError with message ‘ORA-01722: número inválido’??? no ApplyUpdates, uma forma de resolver/contornar este problema é definir o parâmetro NLS_NUMERIC_CHARACTERS na conexão do Oracle.

Adicione o código no evento AfterConnect do TSQLConnection:

procedure TMainDM.SQLConnectionAfterConnect(Sender: TObject);
const
  SQL = 'ALTER SESSION SET NLS_NUMERIC_CHARACTERS=''.,''';
begin
  SQLConnection.ExecuteDirect(SQL);
end;
 
 
 

4 Comments

 
  1. NelZ disse:

    thank you very much!!!
    There was this error in my projects in D2010!!!
    fantastic..
    thank you really…

  2. Gabriel disse:

    Cara muito bom … vai no Delphi 7 tb … valeu!

  3. Vinicius disse:

    Aleluia que alguém fala uma coisa que presta!

  4. Alexandre disse:

    Valeu! Informação muito boa.

 

Leave a Comment

 




XHTML: You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>