Re: candidate keys in abstract parent relations



Tony Rogerson wrote:

> But don't forget there is another phase after the logical model and thats
> the implementation of it.
>
> This is where surrogate keys really come into play.
>
> It helps create a highly scalable database and provides an efficient
> interface into the applications using the database.
>

Absolutely. I didn't anywhere mean to imply that surrogate keys
(artificial or otherwise) are unnecessary in the implementation. I was
simply trying to explode the idea that "I don't have a key so I need to
create an artificial one". That fallacy is the cause of much bad
design. A key is not a surrogate unless it has a corresponding natural
key.

> a lot of designers
> (especially celko) try to directly implement the logical model without
> regard for anything other than writing pure SQL against it. The database
> from a business stand point is there to store data.
>

The problem is that many (perhaps most) SQL DBMSs are somehwat limited
in the options they support for abstracting the logical model from its
physical implementation. This is unfortunate and it is the reason why
we have to make so many design compromises. I do agree that those
compromises are necessary in many cases but that doesn't mean the
theory is inadequate - it means the products are.

--
David Portas

.



Relevant Pages

  • Re: Clues on modeling a really simple concept
    ... clue about what kind of design will give you the most fun. ... object modeling, but that's really a subject for a different discussion. ... doesn't tell  you how to design the database. ... For the logical model, ...
    (comp.databases.theory)
  • Re: candidate keys in abstract parent relations
    ... relational model has no problem a priori with surrogate keys, ... A common rule within the database design community is to abjure ... constraint to enforce) at least one natural key for each table. ...
    (comp.databases.theory)
  • Re: Natural keys vs Aritficial Keys
    ... of query when surrogate keys were used -- but this was ignored. ... there are cases where the use of surrogate keys ... actually amount to a sizeable amount of "dead" bytes in the database. ... the design center of database design has shifted from the support of an ...
    (comp.databases.theory)
  • Re: Modeling Data for XML instead of SQL-DBMS
    ... This particular logical model deliverable had as its requirement ... I think of the XML model as a di-graph where there are trees on the ... propositions and different aspects of propositions are modeled ... you can design for all tools that employ a particular data ...
    (comp.databases.theory)
  • Re: Indexes and Logical design
    ... > design, and I suspect Marshall can make that case better than I can. ... > logical model as such. ... by placing a constraint on the index. ... a unique constraint can be enforced via a non-unique ...
    (comp.databases.theory)