C#系統開發之數據庫設計-繼承關係的建立

在實際的程序開發中,我們通常在後臺程序設計的時候,用了大量抽象的東西,接口,抽象類等等,也用了繼承和實現來快速擴展子類,這些都是爲了讓程序開發更加高效,模塊化,易於分工協作等等;但是在數據庫端如何實現這種繼承關係呢?特別是針對於業務特別複雜的模型的時候,數據庫的設計更加重要;

通常有三種方法來實現:

1 建立外鍵表,將所有子表共有的用於實現某一種功能的字段封裝起來,比如將描述數據權限的字段封裝起來;這種做法雖然簡化了子表的數據列,但是卻增加了後期使用過程中的查詢消耗;

2 子表各自擁有記錄描述自己的公共字段:比如每個子表都有結構相同的描述數據權限的字段;這種做法是最基本的,因爲是最耗時的,特別是當父類業務進行變化的時候,子表需要或者修改添加相同的字段;

3 將所有的子表記錄在一張表結構中,這樣雖然,降低了查詢消耗,但是也浪費了子類對象的大量字段,因爲並不是每一個子類都會用到所有字段;

具體選擇那種方法,是根據實際業務進行選擇和調整。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章