Search Postgresql Archives

Re: string primary key

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Scott Marlowe wrote:


If you need a unique constraint on the text field anyway, and it's a
natural key, you're generally better of using that field as the pk.

However, if it's not a natually unique key, then it shouldn't be the pk,
and int is a perhaps better choice.

There are two VERY oppositional schools of thought on natural versus
artificial keys out there, and neither side is likely to change their
minds.

My preference is generally for artificial keys (i.e. sequence generated
ones) because I've had requirements change underfoot too many times to
rely on natural keys all the time.


Thanks for your answer. It sounds like your saying that in terms of performance, there is no difference between a character field pk and an integer pk.

I've got a followup - The primary key for the table in question consists of 2 varchar fields: picture 'state' and 'city' where city is guaranteed to be unique within a state, and (state, city) form a unique key. This sounds like a good candidate for a sequence key. Is there a difference in terms of performance in this case?


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux