我正在研究處理問題和答案的應用程序。我的答案可以是從int,text,image,option等不同的類型。我想知道把它們分成不同的表格是否是一種很好的做法?針對列差異很小的類似表的SQL設計
Question QuestionAnswer
-------- -------------
int Id int QuestionId
int typeId int AnswerId
TextAnswer ImageAnswer OptionAnswer IntAnswer
---------- ----------- ------------ ---------
int AnswerId int AnswerId int AnswerId int AnswerId
nvarchar Value binary Value int Value int Value
int OptionTypeId
我想到了聚合所有這些爲一個單一的答案表,但隨後就會充滿可空字段和我怕如果我不小心,可能引入一些錯誤。這是一個好主意嗎?還是這種設計是分離不同類型答案的好實踐?或者也許有更好的方法呢?謝謝!