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

23/01/2004

0

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

Responder

Posts

28/01/2004

Bon Jovi

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)

[img:1702c4fcb4]http://www.badyoungimagens.blogger.com.br/logo.JPG[/img:1702c4fcb4]

[img:1702c4fcb4]http://perso.wanadoo.fr/richiesfire/avatars/j-loap4.gif[/img:1702c4fcb4]


Responder

05/02/2004

Paulomerino

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!!!


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