2015-04-18 26 views
1

我正在創建一個在線考試門戶。爲在線考試門戶創建關係數據庫表

在數據庫中,我可以代表的問題和答案在兩個方面:

  1. 一個問題表和回答表有一到提問和回答之間有許多關係。

  2. 問題表與列的每個答案。

一個問題可以有最大值。四個選項。

1和2中的哪一個設計更好?

回答

3

選項1比較好。這是簡單的標準化。對於選項2,例如,您將有4個不同的列名稱,您將需要像這樣的語句:

WHERE "this answer" = column1 OR "this answer" = column2 ... etc. 

非常醜陋和討厭。如果你想在列上加上索引,但你不在這裏,情況會變得更糟。

此外,關係數據庫被設計爲與標準化設計一起工作,這裏有一對多的關係。當你去修改它時,你會發現更多的支持,特別是如果你爲每個答案添加屬性。