Re: does a table always need a PK?

From: Paul G. Brown <paul_geoffrey_brown_at_yahoo.com>
Date: 31 Aug 2003 22:19:16 -0700
Message-ID: <57da7b56.0308312119.6b37cc3d_at_posting.google.com>


"Marshall Spight" <mspight_at_dnai.com> wrote in message news:<aUw4b.317792$YN5.217833_at_sccrnsc01>...
> "Paul G. Brown" <paul_geoffrey_brown_at_yahoo.com> wrote in message news:57da7b56.0308311128.3b6d4518_at_posting.google.com...
> > Put it another way: as much as folk would love to be able to say things
> > like "I don't care about implementation details: we're talking about the
> > logical model here.", it simply doesn't cut much cheese. In the end you've
> > got to have a working system or no one (outside a small circle of friends)
> > cares because what you have is impractical.
>
> I agree that for any given model or design being discussed, it must be
> *implementable* for there to be any point in discussing it.

   Actually, I'm not really saying that there is no point in discussing   logical model independent of implementation. I guess I'm saying that there   is a point to discussing both how something ought to work (logical model)   and also that there is a place for looking at alternatives & other solutions   at the logical level when the physical proves too hard. For example, we   worked out how to pick 'pretty good' query plans (mostly) and that's a   really hard problem both in theory (NP-hard in the number of relations)   and practice (as Mikito has pointed out in reference to selectivity and   costing and so on.)

> I
> think you go too far if you're asserting that the implementation
> details need to be all worked out before, or at the same time as,
> the model. Logical models are an important aspect of system design,
> and while it is important to be able to discuss how the parts of
> a system design interact, it is also important to be able to talk
> about those parts in isolation. This is nowhere more true than
> when discussing a logical model, because that is the part the
> human will interact with.

   Most of which I buy. But when the implementation crowd--who tend to be   pretty bright and inventive and not completely ignorant of theory--say   something is hard, you have two choices. You can either label them   ignorant malingers, or else read what they put into print and consider   it.

    I mean, God didn't say "Sets are better than bags". The arguments for   sets are entirely pragmatic, although the explaination takes a   theoretic form.

    And once again, I am *not* argueing for a bag algebra. I'm just--like   any good engineer--pointing out that there are practical implications   which must be kept in mind.

    KR

      Pb Received on Mon Sep 01 2003 - 07:19:16 CEST

Original text of this message