COMO INSERIR DADOS NUMERIC(9,2) NO POSTGRE COM DELPHI 6 ???

PostgreSQL

23/01/2004

ESTOU TENTANDO INSERIR DADOS NUMÉRICOS(DECIMAIS) NO BANCO POSTGRESQL ATRAVÉS DO COMANDO INSERT INTO... E O DELPHI ME RETORNA UMA MENSAGEM DE ERRO ´... INVALID VARIANT TYPE CONVERSION...´ COMO POSSO RESOLVER ESSE PROBLEMA?


Regivan

Regivan

Curtidas 0

Respostas

Bon Jovi

Bon Jovi

23/01/2004

Vc nao mostrou em que situacao/caso ocorre o erro.

Veja primeiro se está usando o tipo de dados correto no Delphi em relacao ao q esta no banco:

No caso de TFields, usar TBCDField
No caso de TParams/TParameters, usar DataType = ftBCD
No caso de concatenar na string SQL, fazer por exemplo: CAST(290.50 AS NUMERIC)




GOSTEI 0
Paulomerino

Paulomerino

23/01/2004

Cara isso tbm estava acontecendo comigo... ai eu fiz uma função que troca as virgulas por pontos e os pontos por virgulas antes de mandar gravar o valor na tabela e deu certo...
é que o postgre adota o formato monetário americano que é diferente do nosso...

faz uma função com um código bem simples do tipo:

valor := ´valor a ser convertido´;
tamanho := Length(valor);
for i := 0 to tamanho do
begin
if valor[i] = ´.´ then
valor[i] := ´,´
else if valor[i] = ´,´ then
valor[i] := ´.´;
end;

espero que isto resolva o seu problema...

falows.... um abraço!!!


GOSTEI 0
POSTAR