Ich habe eine große (SQLServer) Datenbank mit Hunderten von Spalten geerbt, die Beträge der einen oder anderen Sache darstellen. Die Einheiten für diese Werte (z. B. "Gallonen", "Zoll" usw.) werden im Feld "MS_Description" der erweiterten Eigenschaften gespeichert. Ich frage mich, ob es einen besseren Weg gibt, diese Informationen zu speichern. Ich nehme an, es ist zu Dokumentationszwecken in Ordnung, aber es wäre schwierig, robuste Berechnungen zur Einheitenumrechnung basierend auf diesen Daten durchzuführen. Zu diesem Zeitpunkt bin ich noch nicht bereit, eine invasive Änderung vorzunehmen. Wenn ich jedoch die Möglichkeit dazu bekomme, was ist diesbezüglich die empfohlene Best Practice? Zu den Optionen, die mir aus dem Kopf gehen, könnten gehören:
- Ändern Sie den Spaltennamen in eingeschlossene Einheiten (z. B. "TotalVolumeInGallons". Dies würde die Informationen ein wenig leichter verfügbar machen, aber es scheint mir immer noch schwach.)
- Fügen Sie eine separate "Einheiten" -Spalte hinzu, um jeder "Betrag" -Spalte zu entsprechen (diese Spalte könnte nvarchar sein ODER ein Fremdschlüssel für eine separate Einheitentabelle, wodurch die Berechnung von Einheitenumrechnungen vereinfacht wird Viele Spalten könnten die Größe meiner Datenbank ziemlich verdoppeln - mit furchtbar redundanten Daten.)
- Erstellen Sie ein neues Feld in den erweiterten Eigenschaften, das speziell für Einheiten bestimmt ist. (Leider glaube ich nicht, dass dies ein Fremdschlüssel für eine Einheitentabelle sein kann.)
- Gibt es eine andere Idee, die ich übersehen habe?
UPDATE: Nachdem ich @Todd Everetts Antwort gelesen hatte, kam mir eine mögliche Lösung in den Sinn, sodass ich meine eigene Frage beantworten werde. (Siehe unten)