2013-06-12 10 views
5

ich dieses Tutorial lesen:SQL Naming Conventions

http://leshazlewood.com/software-engineering/sql-style-guide/

aber, habe ich darüber verwirrt.

Was sollte ich in diesem Fall SQL nennen.

-Mein Tabellenname: QuestionTypes oder question_types.

-Meine Tabellen-ID: QuestionTypeID oder QuestionType_ID, question_type_id.

Ich weiß, wenn MySQL Workbench .SQL-Datei zu erstellen, wird QuestionType_ID in FrageTyp_ID konvertiert, also, sollte ich SQL nach diesem Stil benennen: QuestionType?

Vielen Dank.

Antwort

1

Wenn Sie dieser bestimmten Konvention folgen möchten, erhält Ihre Tabelle den Namen question_types und das Feld question_type_id.

Ich folge nicht dieser Konvention, also würde ich die Tabelle QuestionType und das Feld QuestionTypeId nennen.

+0

aber wenn MySQL Workbench SQL-Datei, um sie in Fragetyp Fragetyp umwandeln, übernimmt es mir – Jack

+0

@Jack verwirrt machen: Das ist nur eine Wahl, dass der Autor des Programms getan hat. Solange die Datenbank die Bezeichner als case insensetive behandelt, ist es egal, ob Sie 'QuestionType' oder' questiontype' (oder 'QuEsTiOnTyPe') verwenden, aber das bedeutet nicht, dass Sie Ihre Konvention für ändern sollten * Namen * Dinge. – Guffa

0

Technisch, wenn Sie konsistent sind mit, wie Sie Dinge nennen, ist alles gut zu gehen. Auf beiden Seiten wird es Argumente geben, CamelCase oder Unterstriche zu verwenden.

Ich persönlich empfehle Ihnen, Ihre Tabellen im Singular (also Frage_Typ über Frage_Typen) zu benennen. Es mag trivial erscheinen, aber irgendwann werden Sie in Situationen geraten, in denen die pluralisierte Version Probleme mit der Rechtschreibung oder allgemeinen Konsistenz verursachen könnte. Das ist Teil 1.

Spalten sollten immer singular sein.

Als ich begann mit Datenbanken zu arbeiten, ging ich mit der Unterstreichungsmethode für Namen und für Spalten. Ziemlich sicher, ich habe das Vorschlagsformular SO, aber ich weiß es nicht sicher.

Ich vermeide auch die langen Namen auf dem ID-Feld, weil ich es falsch finde. Meine Schemas sind immer ziemlich offensichtlich (Werkbank oder anders) und meine Abfragen haben immer das Identifikationspräfix, so dass der lange Name nur die Anzahl der Zeichen erhöht, die ich eingeben muss, ohne dass die hinzugefügten Zeichen tatsächlich genutzt werden.

Ich scheine mich zu erinnern, diesen Thread zu lesen, um eine bessere Vorstellung davon zu bekommen, welche Methode in den Plural-gegen-Singular-Tabellen zu verwenden ist. Ich hoffe es hilft.

Table Naming Dilemma: Singular vs. Plural Names