1831 Stimmen

Dilemma bei der Benennung von Tabellen: Singular- und Plural-Namen

Nach akademischer Auffassung sollten Tabellennamen die Einzahl der Entität sein, deren Attribute sie speichern.

Ich mag kein T-SQL, das eckige Klammern um Namen erfordert, aber ich habe eine Users Tabelle in den Singular umzuwandeln, was dazu führt, dass diejenigen, die die Tabelle verwenden, manchmal Klammern verwenden müssen.

Mein Bauchgefühl sagt mir, dass es korrekter ist, beim Singular zu bleiben, aber mein Bauchgefühl sagt mir auch, dass Klammern unerwünschte Elemente wie Spaltennamen mit Leerzeichen usw. anzeigen.

Soll ich bleiben, oder soll ich gehen?

16voto

Andrew Punkte 210206

Tische: Plural

Mehrere Benutzer werden in der Benutzertabelle aufgeführt.

Modelle: Singular

Ein einzelner Benutzer kann aus der Benutzertabelle ausgewählt werden.

Kontrolleure: Plural

http://myapp.com/users würde mehrere Benutzer auflisten.

Das ist jedenfalls meine Meinung dazu.

16voto

Richard Punkte 1

Wenn wir uns die MS SQL Server's Systemtabellen, ihre von Microsoft zugewiesenen Namen sind in plural .

Die Systemtabellen von Oracle sind benannt in singular . Obwohl einige von ihnen im Plural stehen. Oracle empfiehlt den Plural für benutzerdefinierte Tabellennamen. Das macht nicht viel Sinn, dass sie das eine empfehlen und dem anderen folgen. Dass die Architekten dieser beiden Software-Giganten ihre Tabellen nach unterschiedlichen Konventionen benannt haben, macht auch nicht viel Sinn... Was sind diese Leute eigentlich ... PhDs?

Ich erinnere mich, dass im akademischen Bereich nur eine einzige Empfehlung ausgesprochen wurde.

Zum Beispiel, wenn wir sagen:

select OrderHeader.ID FROM OrderHeader WHERE OrderHeader.Reference = 'ABC123'

vielleicht b/c jeder ID aus einer bestimmten einzelnen Zeile ausgewählt wird ...?

15voto

stephbu Punkte 5051

Bei der Skripterstellung werden ähnliche Standards angewandt, d. h. wir verlangen [ ] um die Namen herum und gegebenenfalls Schemaqualifizierer - in erster Linie zur Absicherung gegen künftige Namenszugriffe durch die SQL-Syntax.

SELECT [Name] FROM [dbo].[Customer] WHERE [Location] = 'WA'

Das hat uns in der Vergangenheit die Seele gerettet - einige unserer Datenbanksysteme laufen seit mehr als 10 Jahren von SQL 6.0 bis SQL 2005 - weit über die vorgesehene Lebensdauer hinaus.

14voto

Michel Punkte 1426

Das System tables/views des Servers selbst ( SYSCAT.TABLES , dbo.sysindexes , ALL_TABLES , information_schema.columns usw.) sind fast immer im Plural. Ich denke, um der Einheitlichkeit willen würde ich ihrem Beispiel folgen.

13voto

Ich habe immer den Singular verwendet, weil ich das so gelernt habe. Als ich jedoch vor kurzem ein neues Schema erstellte, entschied ich mich zum ersten Mal seit langer Zeit, diese Konvention beizubehalten, einfach weil... sie kürzer ist. Ein 's' am Ende eines jeden Tabellennamens erscheint mir genauso sinnlos wie ein 'tbl_' vor jedem Tabellennamen.

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