2008-10-06 2 views
6

Ich habe eine Frage zu Feldern in Datenbanken, die Measures sind, die in verschiedenen Einheiten angezeigt werden können, aber nur in einem gespeichert werden, z. B. "Höhe".Codieren Sie eine Kennzahl in einem Datenbankfeldname

Wo sollte die "Mustereinheit" angegeben werden ?. Natürlich in der Dokumentation, etc ... Aber wir alle wissen, dass niemand die Dokumentation liest und dass selbstdokumentierte Dinge vorzuziehen sind.

Aus praktischer Sicht, was denkst du über die Codierung im Datenbankfeld (z. B. height_cm) ?.

Ich finde dies auf den ersten Blick seltsam, aber ich finde es praktisch, Fehler zu vermeiden, wenn verschiedene Leute direkt mit der Datenbank umgehen und sich die "Mustereinheit" niemals ändert.

Was denkst du ?.

Grüße.

+0

Ich stimme mit Scott überein; Was ist falsch daran, das Feld so zu benennen, dass die Einheiten, in denen die Messung ausgedrückt wird, offensichtlich sind? –

Antwort

8

Was ist komisch an height_cm? Sieht gut für mich aus.

Manchmal sehen Sie Kennzahlen und Einheiten in zwei separaten Feldern, was sehr viel schmerzhafter ist.

Solange Sie wissen, dass die Einheiten nicht ändern werden, denke ich, height_cm ist ein guter Weg, damit umzugehen.

+0

Einverstanden, aber ich würde einen Schritt weiter gehen und sehr klar sein. Wenn ich "height_cm" sehen würde, würde ich annehmen, dass sie Höhe in Zentimetern bedeuteten, aber ich wurde vorher von verschraubten Feldnamen verbrannt und würde sicherlich ein paar Zyklen mit Bestätigung und zweiten Rates verbringen. Zeichen sind billig: nennen Sie es "height_in_centrates" –

+0

Stellen Sie sicher, es richtig buchstabieren für, wem Sie erwarten, es zu lesen oder beizubehalten. "Meter" ist die wissenschaftliche Standardschrift, aber "Meter" ist die amerikanische Schreibweise. http://en.wikipedia.org/wiki/Centimeter – Liam

+0

@TrickyNixon: Disagreed. Charaktere sind nicht billig. Wenn es STANDARDISIERTE Abkürzungen für Einheiten gibt (oder sogar sehr gebräuchliche Abkürzungen) - denke ich, dass es eine Verschwendung ist, sie nicht zu benutzen ... – Yarik

2

Die meisten Datenbanken unterstützen Kommentare zu Spalten. Zum Beispiel in Postgres können Sie einen Kommentar wie folgt festgelegt:

COMMENT ON COLUMN my_table.my_column IS 'cm'; 

den Gerätenamen speichern diese Art und Weise bedeutet, dass Ihre Datenbank selbsterklärend ist. Ich würde auch dringend empfehlen, wissenschaftliche Standardeinheiten zu verwenden (z. B. das metrische System).

+0

Ich würde mich nicht darauf verlassen, dass ein Wartungsprogrammierer den Spaltenkommentar liest! – finnw

+0

Vereinbart, für solch eine kleine Menge von Daten, gehen Sie mit 'height_in_centrimetes' als Spaltenname.aber für komplexere Einheiten wie "Kilogramm Quadratmeter im Quadrat pro Quadratsekunde" würde ich definitiv die Kommentare verwenden. Und vertrau mir, solche Einheiten kommen vor. – Liam

0

Ich stimme zu, nichts falsch beim Hinzufügen der Einheit zum Feldnamen.

Das einzige, was ich sagen würde ist, die Namenskonvention über Ihre Datenbank konsistent zu machen - d. H. Situationen vermeiden, in denen Sie sowohl height_cm als auch mm_width in derselben Datenbank haben!

0

Seien Sie vorsichtig über Maßnahmen, die sich wie Währungen ändern können. In vielen Fällen ist es nicht sinnvoll, das Datenbankfeld umzubenennen, wenn sich die Messung ändert.

Es ist ziemlich albern, ein Feld namens amount_mk zu haben, das früher Geldbetrag in Mark enthielt, aber aktuell tatsächlich Geldbetrag in Euro enthält.

Verwandte Themen