Dynamische Daten/Felder machen immer Spaß.
Die Art, wie ich das vorher angegangen bin, ist eine Tabelle, die die Felder definiert, die ich will. Ein sehr einfaches Beispiel ist:
GroupId int, < - erlaubt mir, Gruppenfelder zusammen für einen gemeinsamen Zweck
fieldID int, < - eindeutige Kennung für
Field varchar (100) verbindet, < - Offensichtlich
DataType Int < - Joins auf einer Tabelle, die verfügbare Typen wie Text, Telefon, E-Mail enthält, die spezielle Verarbeitungsmerkmale haben können.
DisplayOrder int, < - In welcher Reihenfolge werden die Felder auf dem Bildschirm angezeigt.
Dann habe ich eine andere Tabelle, um die tatsächlichen Daten zu halten: EntryId int, < - Gruppiert die Werte zu einem eindeutigen Einstiegspunkt. GroupId int, FieldId int, Wert varchar (max) < -wie auch immer die Zahl, die Sie fühlen, die Daten enthalten wird; oder max, wenn Sie die richtige Version von SQL-Server haben
Schließlich erzeuge ich dynamisch Ansichten, die die tatsächlichen Daten um 90 Grad für eine einfachere Berichterstattung drehen.
Auf diese Weise haben Sie eine Menge Freiheit bei dem, was Sie sammeln, ohne den zugrunde liegenden Code zu ändern.
Gilt der Join-Typ nicht nur für ein Paar Felder, normalerweise (aber nicht notwendigerweise) in verschiedenen Tabellen? Und können Joins nicht manchmal auf der Basis von mehr als einer Spalte erstellt werden? –