我有一套描述清單的表及其屬性列表(問題)。屬性可以在清單之間共享,這就是我擁有CHECKLIST_TO_ATTRIBUTE表的原因。當有人啓動清單實例時,將執行查詢以獲取當前問題,然後將這些問題插入到答案表中。現在我們要顯示檢查清單,但按類別對屬性進行分組。這是我在此要求之前所擁有的,我已經包括了所有的標準色譜柱。什麼是更好的分表關係設計
CHECKLIST_CLASS
CL_CLASS_ID
CL_VERSION
ATTRIBUTE
ATTRIBUTE_ID
DESCRIPTION
CHECKLIST_TO_ATTRIBUTE
CL_CLASS_ID
ATTRIBUTE_ID
CHECKLIST_INSTANCE
CL_INSTANCE_ID
CL_CLASS_ID
ANSWER
CL_INSTANCE_ID
ATTRIBUTE_ID
VALUE
一旦清單已經實例化並且我們修改清單(修訂版),實例化清單仍然必須引用原始問題。我顯示一個清單實例的方式是使用JOIN向ATTRIBUTE表查詢ANSWER表並遍歷結果集。
很顯然,我將添加一個類別表
ATTRIBUTE_CATEGORY
AC_ID
DESCRIPTION
但是,在我的refence添加到這個表?如果我將AC_ID添加到CHECKLIST_TO_ATTRIBUTE定義表中,那麼我認爲我在這裏有兩個選項。
1)修改清單實例時,修改ANSWER表以包含AC_ID。
ANSWER
CL_INSTANCE_ID
ATTRIBUTE_ID
VALUE
*AC_ID*
2)或者不管回答表,當我查詢它顯示,做一些連接來獲得從CHECKLIST_TO_ATTRIBUTE表AC_ID。我知道ANSWER.CL_INSTANCE_ID,因此加入CHECKLIST_INSTANCE表以獲取CL_CLASS_ID,然後將其與ANSWER.ATTRIBUTE_ID一起用於從CHECKLIST_TO_ATTRIBUTE表中獲取AC_ID。
什麼是更健全的設計?或者我還沒有考慮其他選擇嗎?我不想只將AC_ID添加到屬性表中,因爲屬性和類別是耦合的。屬性可以在清單之間共享,以便最終我們根據指標彙總度量標準,而不管它在哪個檢查清單類上找到。
即多少尺寸不正確,可能在櫥櫃藍圖審查清單以及內部房間框架佈局審查清單。
完整性問題是什麼讓我想到的只是做連接。但是我想我寧願抓住機會,讓查詢更容易。 – jeff