From: | John Brothers <johnbr(at)mindspring(dot)com> |
---|---|
To: | Nicolas Huillard <nhuillard(at)ghs(dot)fr>, "'pgsql-general(at)hub(dot)org'" <pgsql-general(at)hub(dot)org>, "'pgsql-sql(at)hub(dot)org'" <pgsql-sql(at)hub(dot)org> |
Subject: | Re: [GENERAL] Problem with SELECT on large negative INT4 |
Date: | 2000-01-28 03:48:39 |
Message-ID: | 4.1.20000127224614.00c96190@pop.mindspring.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general pgsql-hackers pgsql-sql |
We have the same problem with 64-bit integers - and it isn't just
psql - the same problem exists in jdbc.
Anyways, to fix it, we did the following:
'-11233232322233232323232321232'::int8
whenever we did any operation on the large field.
you may want to try
'-2057496808|'::int4
in the same manner.
At 01:37 PM 1/27/00 +0100, Nicolas Huillard wrote:
>I have a DB with is updated using MS Access. Primary keys are Int4 with
>default random values ("NuméroAuto" + "Aléatoire" in Access).
>The DB is migrated as-is in Postgres, with tbl_prod.cle_prod field
>containing values from -2057496808 to 2139583719.
>When I SELECT in the table, using the INT4 cle_prod value, PG doesn't find
>the tuple. When I SELECT using the VARCHAR(10) ref_prod value, PG finds the
>tuple, and show the right value for the cle_prod filed : the same as the one
>I SELECTed for...
>
>This sounds like the long negative integer values given in PSQL is not
>converted correctly while executing.
>Using a long positive integer value, all works like a charm...
>
>Below is the queries type sto sho what append.
>I'm using Postgres 6.5.2 from the RPMs.
>
>Nicolas Huillard
>
>
>
>
>gest=> select cle_prod, ref_prod from tbl_prod where ref_prod='4866VC';
> cle_prod|ref_prod
>-----------+--------
>-2057496808|4866VC
>(1 row)
>
>gest=> select cle_prod, ref_prod from tbl_prod where cle_prod = -2057496808;
>cle_prod|ref_prod
>--------+--------
>(0 rows)
>
>gest=> \d tbl_prod
>Table = tbl_prod
>+----------------------------------+----------------------------------+----
---+
>| Field | Type |
Length|
>+----------------------------------+----------------------------------+----
---+
>| cle_prod | int4 not null default nextval('" |
4 |
>| ref_prod | varchar() not null |
10 |
>...
>+----------------------------------+----------------------------------+----
---+
>Index: tbl_prod_pkey
>
>gest=> select version();
>version
>--------------------------------------------------------------
>PostgreSQL 6.5.2 on i486-pc-linux-gnu, compiled by gcc 2.7.2.3
>(1 row)
>
>gest=>
>
>
>************
------------
johnbr(at)incanta(dot)net
From | Date | Subject | |
---|---|---|---|
Next Message | John Brothers | 2000-01-28 03:51:40 | Re: [SQL] RE: [GENERAL] Problem with SELECT on large negative INT4 |
Previous Message | Ed Loehr | 2000-01-28 00:52:15 | Re: [GENERAL] Large Functions and Index Rebuild |
From | Date | Subject | |
---|---|---|---|
Next Message | The Hermit Hacker | 2000-01-28 03:48:42 | Re: [HACKERS] [6.5.3] 'attribute not found' |
Previous Message | Bruce Momjian | 2000-01-28 03:46:53 | Re: [HACKERS] TODO list check |
From | Date | Subject | |
---|---|---|---|
Next Message | John Brothers | 2000-01-28 03:51:40 | Re: [SQL] RE: [GENERAL] Problem with SELECT on large negative INT4 |
Previous Message | Chairudin Sentosa Harjo | 2000-01-28 03:07:09 | Re: [SQL] Problems with create temporary table and select ... into |