6 Stimmen

Der richtige Weg, "ID" in Spalten in SQL zu schreiben

Meine erste Frage hier. Ich mag die Seite so sehr :)

Ich habe eine SQL-Tabelle namens Produkt. In dieser Tabelle möchte ich eine Spalte für die ID des Produkts erstellen und möchte wirklich wissen, wie man ID richtig schreibt, da ich im Laufe der Zeit viele ID-Spalten erstelle.

Also ist es: "ID" oder "Id" ?

Und auch ein Fremdschlüssel in einer anderen Tabelle, wird das als ProductID oder ProductId bezeichnet?

9voto

outis Punkte 71613

Die Großschreibung in SQL ist größtenteils eine Frage des Codierungsstils. Konsistenz ist der wichtigste Aspekt. Trotzdem sieht "ProductId" für mich ein wenig wie "Productld" aus (das ist ein kleines L vor dem "d"), also bevorzuge ich "ProductID" (oder "productID" oder "product_id").

Was das Voranstellen von Spaltennamen mit Tabellennamen betrifft, halte ich das für zu viel. Products.id ist ausreichend; Products.productID ist überflüssig.

8voto

Martin Smith Punkte 417623

Es gibt keine "richtige" Möglichkeit, es zu tun. Seien Sie einfach konsequent. Meine persönliche Präferenz ist es, ProductId in beiden Tabellen zu verwenden. Wenn Sie für alle Tabellen "ID" verwenden und dann mit einer anderen Tabelle verknüpfen, werden Sie wahrscheinlich sowieso Aliase verwenden müssen, um zwischen den beiden ID-Feldern zu unterscheiden.

4voto

gbn Punkte 407102

Persönlich würde ich ProductID, ProductName usw. in einer Produkt-Tabelle haben und auch bei den Fremdschlüsseln, um zu vermeiden, überall ID und Name Spalten zu haben

Sei einfach konsequent

3voto

James Curran Punkte 98228

Nun, "Id" ist die Abkürzung für "Identifikation", also sollte es "Id" sein.

Andererseits wird es als "I-D" ausgesprochen und nicht als "id", daher ist auch "ID" akzeptabel.

Ich bevorzuge "ProduktId" anstelle von nur "Id" für den Primärschlüssel einer Tabelle, damit beide Seiten der Fremdschlüsselbeziehung übereinstimmen.

3voto

Larry Lustig Punkte 47313

Wie du möchtest.

Die meisten (viele? Einige? Die, die ich kenne?) Frameworks scheinen den Kleinbuchstaben "id" für den Primärschlüssel und "foreignkeytablename_id" für den Fremdschlüssel übernommen zu haben, zumindest für die Standardbenennung. Ich mag diese Konvention selbst nicht, da ich den Schlüssel gerne auf beiden Seiten der Beziehung den gleichen Namen habe.

Meine Präferenz ist EntityNameID an beiden Stellen (zum Beispiel ProductID, OrderID, OrderDtlID und so weiter).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X