Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Problema Com Formato De Número


Guest --samuelsjn --
 Share

Question

Guest --samuelsjn --

Olá pessoal;

Estou com dificuldade em um problema. Estou usando o banco de dados postgres com o delphi 7.

Eu possuo uma tabela com alguns campos, onde um deles é o valor de um item. Eu o coloquei como tipo float8.

No delphi, estou fazendo um edit para entrar com esse valor.

É ai que consta o problema.

O banco de dados não aceita vírgula antes das casas decimais. ele fala que o tipo de inforamação não é válido.

Eu vi neste forum algumas formas de alterar, mas não estão dando certo.

alguém poderia me mostrar um exemplo.

Desde já o meu muito obrigado.

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0
No delphi, estou fazendo um edit para entrar com esse valor.

É ai que consta o problema.

O banco de dados não aceita vírgula antes das casas decimais. ele fala que o tipo de inforamação não é válido.

samuelsjn, você não informou como está utilizando este valor no programa, mas imagino que você esteja concatenando strings da instrução SQL com os edits.

Neste caso você tem algumas opções:

1) fazer uso da função de formatação na instrução SQL do PostGres, apontada pelo colega Jhonas - to_number;

2) formatar o texto antes de concatenar. Neste caso, seguindo o que você disse, seria necessário apenas remover os pontos (".") que possam existir, de modo que haverá, no máximo, uma vírgula a qual será tratada como separador de decimal. Um ex.:

...
  SQL.Add('Values(212121, '+ StrToFloat(StringReplace(Edit1.Text,'.', '', [rfReplaceAll]) +', 12/10/2007, "BATATINHA", 23');
  ...

Observe que substituimos o '.' por '' (nulo, ou seja, nada - que resulta em sua remoção). Assim, um número digitado neste formato "12.462.456,90", antes da conversão, ficaria assim "12462456,90", o qual não resultaria em erro.

3) utilizar parametrização, ao invés de concatenação.

Abraços

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.8k
    • Total Posts
      646.6k
×
×
  • Create New...