Bobby: Datenbankdesign

Beitrag lesen

Moin

Grundsätzlich zur ID:
ich dachte, gehört zu haben, dass man grundsätzlich eine tabelleninterne ai-ID vergeben soll. Was hälst du von dieser Aussage? Ich habe das bisher immer so gemacht, ist die Frage, ob das grundsätzlich sinnvoll ist. Denn dann wäre das ursprügnliche Design meiner "edgeinformations" eigentlich richtig im Sinne dieses Dogmas.

Da gibt es unterschiedliche Ansichten. Pro: nur eine Id und die noch autoincrement ist hilfreich um einen eineindeutigen key zu erzeugen. Man muss sich nicht drum kümmern. Außerdem sind kurze PK einfacher für das DBMS zu handlen

Contra: bei der verwendung einer id müssen auch alle felder als unique gekennzeichnet werden um die referentielle Integrität zu wahren und in der 3.NF zu bleiben. Und ob das weniger leistung benötigt als schlüsselkandidaten direkt als PK zu definieren, kann ich nicht beantworten.

Ich persönlich definiere das meiste ohne ID. Es sei denn es gibt keinen eineindeutigen schlüsselkandidaten.

Wenn jemand eine sinnvolle Erklärung zu definitiven Verwendung einer ID, so lasse ich mich gern vom Gegenteil überzeugen.

Gruß Bobby

--
-> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
### Henry L. Mencken ###
-> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
## Viktor Frankl ###
ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)