Hello all,
i DON'T know what is the proper forum to throw this question and I must
to insist in this "feature". Sorry.
I have a lot of tables from Oracle 8i Databases with a lot of columns
with numeric(x,0) definition.
Ok.. I am traslating my oracle tables to PostgreSQL tables. But I am
having a serious problem with my client aplications.
When I compare a numeric(x,0) field with a float8 field I have an error
on PostgreSQL what I didn't have with Oracle. I mean:
CREATE test (one numeric(2,0));
SELECT * FROM test WHERE one = 1.00000;
This runs fine on my Oracle Systems.. but I have problems with my
PostgreSQL system. I have tried to create an operator to workaround
this inconvenience:
numeric '=' float8 with CREATE OPERATOR command and calling to a function to return a
boolean.
Ok.. great.. It is running now. But when it runs.. I have another
problems comparing numeric with integers and so on. So I must to DROP
OPERATOR......
I don't understand what is the problem and what options I have to
workaround it (without re-write a lot of client applications).
I have a lot of code I don't want to modify. The question is:
Why we cannot compare numeric with double precision ? And why Oracle or
SQL can do it without problems ?
Thanks a lot.