Genuino Teixeira escreveu:
> Olá,
> Estou usando a Version 8.0 do postgresql, e o encoding do banco de
> dados que eu uso é LATIN1. Em uma tabela tenho um campo float4 e quando
> insiro um dado do tipo 8.55 o banco arredonda para 8.6.
>
> Alguém saberia como contornar este problema? Quando insiro 8.55 o valor
> deve permacer 8.55 e não ir para 8.6.
>
O problema não é do PostgreSQL.
bdteste=# CREATE TEMP TABLE fuu(bar float4);
CREATE TABLE
bdteste=# INSERT INTO fuu VALUES(8);
INSERT 0 1
bdteste=# INSERT INTO fuu VALUES(8.5);
INSERT 0 1
bdteste=# INSERT INTO fuu VALUES(8.55);
INSERT 0 1
bdteste=# INSERT INTO fuu VALUES(8.555);
INSERT 0 1
bdteste=# INSERT INTO fuu VALUES(8.5555);
INSERT 0 1
bdteste=# SELECT * FROM fuu;
bar
--------
8
8.5
8.55
8.555
8.5555
(5 registros)
Verifique se você não está forçando um arredondamento:
bdteste=# SELECT to_char(bar,'999.9') FROM fuu;
to_char
---------
8.0
8.5
8.6
8.6
8.6
(5 registros)
Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral