Comparing Numeric and Double Precision (float8)..

Поиск
Список
Период
Сортировка
От Terry Yapt
Тема Comparing Numeric and Double Precision (float8)..
Дата
Msg-id 3DC62BB2.72FC66C8@technovell.com
обсуждение исходный текст
Ответы Re: Comparing Numeric and Double Precision (float8)..  (Bruno Wolff III <bruno@wolff.to>)
Список pgsql-sql
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.


В списке pgsql-sql по дате отправления:

Предыдущее
От: "Dmitry G. Mastrukov" Дмитрий Геннадьевич Мастрюков
Дата:
Сообщение: Re: uniqueidentifier datatype for 7.3.X
Следующее
От: Bruno Wolff III
Дата:
Сообщение: Re: Comparing Numeric and Double Precision (float8)..