Re: [GENERAL] Problem with SELECT on large negative INT4
От | John Brothers |
---|---|
Тема | Re: [GENERAL] Problem with SELECT on large negative INT4 |
Дата | |
Msg-id | 4.1.20000127224614.00c96190@pop.mindspring.com обсуждение исходный текст |
Ответ на | Problem with SELECT on large negative INT4 (Nicolas Huillard <nhuillard@ghs.fr>) |
Список | 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@incanta.net
В списке pgsql-sql по дате отправления: