Hallo, Am Mittwoch, 17. Juni 2009 schrieb Andreas Borutta: snip > Aber ich kann es mir bei Deinem Beispiel nicht verkneifen: > Das Bessere ist der Feind des Guten. Das ist meistens so. :-)
> > Hier könnte es sein: > > Orte > ID (primary key) > PLZ > Name > > Oder würdet ihr den Schlüsselkandidat "PLZ" als Primärschlüssel > empfehlen, weil er sozusagen einen sprechenden/natürlichenr Schlüssel > darstellt? PLZ sind in D eindeutig, könnten somit als Schlüssel verwendet werden. Wenn nicht Teilorte/Stadtteile oÄ referenziert werden müssen. Dann ist es Essig damit. Hier hilft dann tatsächlich nur ein Primärschlüssel, der höchstwahrscheinlich künstlich sein muss. > > In der wirklichen Welt (in Deutschland), kommt fast überall die > Postleitzahl vor dem Ort. > Konventionen sollte man nicht ohne guten Grund brechen, oder? Du kannst es in der Reihenfolge definieren. Wenn dein DBMS aber die Feldnamen alfabetisch sortiert, wenn du die Tabelle inspizieren willst, hast du auch uU Pech gehabt. In diesem Beispiel jetzt nicht, aber ein geeignetes lässt sich bestimmt konstruieren. > > Und wenn die Tabelle schon "Ort" heißt, braucht man IMHO diesen > Namensteil nicht mehr im Feldnamen wiederholen. Das ist imho Ansichtssache. In der Tabelle ORT könntest du auf eine führende "Vorsilbe" verzichten. Was aber, wenn du eine weitere Tabelle zB AUTO definieren musst mit den Feldern NAME (aka Automarke), TYP, MOTORLEISTUNG (Warum auch immer, sei mal dahingestellt, Beispiele hinken immer :-) ). Dann hast du zwei Tabellen mit dem Feldnamen NAME. Als Progrmmierer habe ich es mir angewöhnt solche Namen so eindeutig wie möglich zu machen, selbst dann, wenn das 3..17 (nur so zB) Buchstaben mehr sind. Spätestens bei der ersten Wartungsprogrmmierung bist du dafür dankbar. Ich bin der Meinung, das gilt auch bei Tabellen- und Feldnamen. > Einen Plural im Tabellennamen finde ich nützlich. Er zeigt dem > Verwalter (ich rede BTW nicht vom Endanwender, auch oben nicht) auf > intuive Weise an, dass es sich um einen Tabellennamen handelt, wenn er > z.B. in SQL damit hantieren muss. Hier kann ich jetzt nicht ganz folgen, auf was du dich beziehst. -- Mit freundlichen Grüßen Matthias Müller (Benutzer #439779 im Linux-Counter http://counter.li.org) PS: Bitte senden Sie als Antwort auf meine E-Mails reine Text-Nachrichten!
signature.asc
Description: This is a digitally signed message part.
