我有3個表格,章節,子章節和分部。這些表中的每一個都有我想存儲在名爲「Sections」的表中的附加記錄。他們都是一對多的關係。
我的問題是在這裏建立交叉引用的最佳方法是什麼?這是我目前有:交叉引用表
Chapter table:
chapterID int
partID int
chapterNumber varchar
chapterName varchar
SubChapter table:
subChapterID int
chapterID int
subChapterNumber varchar
subChapterName varchar
Division Table:
divisionID int
subChapterID int
divisionNumber varchar
divisionName varchar
Section Table:
sectionID int
parentID int
parentType int (1 = chapter; 2 = subchapter; 3 = division)
sectionNumber varchar
sectionName varchar
我遇到的問題是FK限制。我應該刪除外鍵嗎?如果我做了或者甚至會擔心,我能做些什麼來提高效率?
對於那些想知道的,我的要求是在數據庫中可以訪問州和聯邦管理代碼的某些方面,以填充Intranet網頁上的下拉菜單。
爲什麼不只是添加一個字段'sectionType'(作爲章節,子章,部門或部分)到部分表中並將所有內容放入該表中? –
我必須更多地考慮整體的答案,但我不會廢除FK。這就是擁有關係數據庫的意義。 – Matt
Matt:外鍵不是關係數據庫的重點,表和關係是關鍵。而FK's不是*關係,它們只是實際實施關係強制執行的一種方式,這是非常非常不同的事情。 – RBarryYoung