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