Ich arbeite derzeit an einem Projekt, in dem ich eine MS SQL Server-Datenbank in Azure SQL-Datenbank neu erstelle. Ich habe das aktuelle Schema (wenn auch nicht mit dem tatsächlichen Spaltendatentyp) gegeben und ich kam in diesem:Speichern verschiedener Datentypen in einer Spalte, um die Anzahl der Tabellen zu reduzieren
Question (QuestionID, QuestionDescription, UnitOfMeasure, SQLDataType)
QuestionAnswer (QuestionID, AnswerID, Answer, SQLDataType, UnitOfMeasure)
So ist die Datenbank eine Vielzahl von Fragen enthält, die jeweils mit unterschiedlichen Arten von Daten beantwortet/gemessen (int, text, date usw.) und ALLE Antworten werden zusammen mit einer Spalte gespeichert, die den in der Spalte "Antwort" verwendeten Datentyp identifiziert.
Ich würde gerne wissen, ob dies eine gängige Praxis ist und wie dies umgesetzt werden kann? (Mehrere Arten von Daten in einer Spalte). Eine Alternative wäre natürlich, alle Fragen zusammen zu halten, aber die verschiedenen Antworten in verschiedene Tabellen aufzuteilen, aber ich kann sehen, wie das mit über 30 verschiedenen Fragen umständlich wird.
Ich habe dies vorher getan gesehen. Die Angabe des Datentyps und der Skalierung (UnitOfMeasure) in der Antworttabelle ist jedoch keine gute Vorgehensweise. Es sollte nicht auf die Antwort repliziert werden, es ist bereits ein Teil der Frage. –
Jeder Grund, warum nicht sql_variant verwenden? –
http://wiki.c2.com/?FearOfAddingTables –