There are not enough spaces available in the column to allow for the number
of DOC_IDs.  There are three spaces, allowing for at most four occurrences
of DOC_ID, but there are eleven.  --Rick


                                                                                
                                                         
                      Michael Glaesemann                                        
                                                         
                      <[EMAIL PROTECTED]        To:       pginfo <[EMAIL 
PROTECTED]>                                              
                      >                          cc:       
pgsql-sql@postgresql.org                                                      
                      Sent by:                   Subject:  Re: [SQL] pg primary 
key bug?                                                 
                      [EMAIL PROTECTED]                                         
                                                       
                      tgresql.org                                               
                                                         
                                                                                
                                                         
                                                                                
                                                         
                      02/03/2005 09:14 AM                                       
                                                         
                                                                                
                                                         
                                                                                
                                                         





On Feb 3, 2005, at 21:53, pginfo wrote:

> I am using pg 7.4.5 on RedHat AS 3.0.

> sklad21=# \d a_constants_str
>         Table "public.a_constants_str"
>   Column   |         Type          | Modifiers
> ------------+-----------------------+-----------
> constname  | character varying(30) | not null
> fid        | integer               | not null
> constvalue | character varying(30) |
> Indexes:
>    "a_constants_str_pkey" primary key, btree (constname, fid)
>
> sklad21=# select * from a_constants_str ;
> constname | fid | constvalue -----------+-----+-------------
> AACCGRID  |   0 | SOF_3
> AKLTYPID  |   0 | SOF_3
> ADARID    |   0 | SOF_2
> AOBLASTID |   0 | SOF_6
> AUSERID   |   0 | SOF_17
> ANMGRID   |   0 | SOF_21
> LOCAID    |   0 | SOF_41
> DOCID     |   0 | SOF_1585254
> DOCPLAID  |   0 | SOF_1052900
> AKLIID    |   0 | SOF_18740
> DOCRID    |   0 | SOF_2268142
> DOCPOGPLA |   0 | SOF_324586
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> AKLGRID   |   0 | SOF_45
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> ASETUPID  |   0 | SOF_4605
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> TDOCID    |   0 | SOF_337
> TDOCRID   |   0 | SOF_19450
> DOCID     |   0 | SOF_1585254
> DOCID     |   0 | SOF_1585254
> AGRADID   |   0 | SOF_256
> DOCID     |   0 | SOF_1585254
> ASLUID    |   0 | SOF_46
> NASTRF    |   0 | SOF_88
> ANOMID    |   0 | SOF_1200
> (30 rows)
>
>
> Pls., see the records with 'DOCID' and note we have primary key
> defined.


It's unclear from just this data, but there's a chance that there are
varying numbers of spaces after 'DOCID', which would appear as separate
values for the index, even though they aren't readily apparent. Could
you show us the results of the following query?

select constname, length(constname) as constname_length
from a_constants_str;

Here's another one which would show if PostgreSQL is treating them
equally:

select constname, count(constname)
from a_constants_str;

The results of these queries might shed some light on the issue.

Hope this helps.

Michael Glaesemann
grzm myrealbox com


---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])




---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])

Reply via email to