Search Postgresql Archives

Re: Primary keys and composite unique keys(basic question)

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

 



On 2021-04-07 10:35:55 -0600, Rob Sargent wrote:
>     On Apr 7, 2021, at 10:17 AM, Ron <ronljohnsonjr@xxxxxxxxx> wrote:
> 
>     On 4/5/21 9:37 PM, Rob Sargent wrote:
> 
>             It's a small thing, but UUIDs are absolutely not memorizable by
>             humans; they have zero semantic value.  Sequential numeric
>             identifiers
>             are generally easier to transpose and the value gives some clues to
>             its age (of course, in security contexts this can be a downside).
> 
> 
>         I take the above as a definite plus.  Spent too much of my life
>         correcting others’ use of “remembered” id’s that just happened to
>         perfectly match the wrong thing.
> 
> 
>     People seem to have stopped appending check digits to identifiers about 20
>     years ago, and I'm not sure why.
> 
> 
> No the problem is “start from one”. User has item/I’d 10875 in hand and types
> in 10785 which of course in a sequence supplied ID steam is perfectly valid and
> wrong.  Really hard to track down. 

What I've often done when writing software for an Oracle RDBMS is to use
a global sequence instead of one sequence per table (Oracle didn't have
a SERIAL type, so you had to use an explicit sequence and write trigger
anyway). That caught wrong joins (an id value used in one table is never
used in another table) as well as most typos (since ids in a single
table were not dense).

With PostgreSQL I've stopped doing this since the SERIAL type makes it
much more convenient to have a separate sequence per table. But of
course that means that almost any table will have a row with id 10785
and one with 10875.

        hp

-- 
   _  | Peter J. Holzer    | Story must make more sense than reality.
|_|_) |                    |
| |   | hjp@xxxxxx         |    -- Charles Stross, "Creative writing
__/   | http://www.hjp.at/ |       challenge!"

Attachment: signature.asc
Description: PGP signature


[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 Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux