2015-04-16 23 views

回答

4

首先要了解的是12/AS/CI/99不是數據(即使用戶將其視爲一個註冊號),因此不應將其放置在單個列中。

第一範式要求數據爲原子。

確定這四項中的每一項是什麼,並執行四列。可能是註冊年,HomeState,Fish,BirthYear。

這將允許每個組件列的全部功能(查找,搜索,聚合等)。

是的,這意味着密鑰將是四列。複合鍵在關係數據庫中是正常的。

是的,這意味着你將有以「/」在兩者之間,無論你把它顯示給用戶,作爲一個單一的領域(注意之間的區別)來串聯四列標記RegistrationNo。這也是正常的。

如果您不這樣做,如果您將它作爲字母數字列存儲,那麼您將不會擁有數據庫或人們對數據庫期望的任何設施。例如。如果您搜索註冊號爲AS的學生,查詢將會進行桌面掃描(花生的建議不正確),而如果組件是分離的列,它將會非常快速,因爲Key(在任何數量的組件列中)都被索引。學生的密鑰應該在其出現的任何表格中編入索引。

0

如果您的ID的長度已知(並修復),則使用CHAR(length)

+0

謝謝..所以,通過使用char可以搜索他們? – TharinduLucky

+0

是的。但考慮增加一個索引以獲得更好的性能。 – Peanut

+0

謝謝......將這樣做:) – TharinduLucky

相關問題