2012-05-10 52 views
0

我使用的是使用有效日期連接的企業系統。我正試圖弄清楚如何記錄表格之間的連接以幫助我解決問題。據我所知,這些信息並不存在於表中的索引或約束信息中。哪種數據庫文件或工具最適合記錄這些信息?如何記錄生效日期連接

的一個例子的加入將是:

Table_A 
Key_ID - Primary Key 
Employee_ID 
Position_ID 
Effective_DT 
Unique Key -> Employee_ID, Position_ID, Effective_DT 

Table_B 
Employee_ID 
Position_ID 
Effective_DT 
Table_A_Key_ID 
Unique Key -> Employee_ID, Position_ID, Effective_DT 

Table_A_Key_ID從表-A外鍵,不能爲空。換句話說,Table_B中的每條記錄都需要Table_A中的對應記錄,但相反的情況並非如此。要確定Table_B中與Table_A中沒有相應記錄的記錄相關的記錄,您需要獲取小於Table_A.Effective_DT的最高有效日期記錄。

+1

圖工具不記錄連接,但表(實體)以及它們之間的關係。對於你的例子,只需創建一個視圖 - 這會將你的連接「封裝」成一個DB對象。阿洛斯看看 http://stackoverflow.com/questions/10521401/database-design-is-this-a-good-practice-for-location-logging/10524226#10524226 –

+0

感謝您的更正。爲了澄清我的文檔主要目的是加快從系統的一部分到另一部分的轉換。例如,我可能會在員工表上工作幾個月,並突然收到對數據庫的資格部分的請求,這些部分的設置完全不同。到目前爲止,我花了至少半天左右的時間才根據規格書的寫法來切換檔位。你如何記錄你的連接?順便說一句,你是如何在你的其他文章中爲執行計劃創建該圖表的? – tp9

+1

這些圖是ERD的實體關係圖,如我在下面提到的。他們使用像我在下面提到的工具。這些工具還允許您記錄表的連接方式(這就是表之間的關係)。它們顯示基數,哪些是父表,哪些是外鍵等。其他圖表看起來像是某些數據庫在顯示「解釋計劃」時提供的內容。因此,如果您的文檔連接意味着「瞭解表格的相關性」,ERD Diagram Tools(他用來製作圖表的工具)就是您要查找的內容。 – BillR

回答

0

ER modelling tool將記錄引用完整性,但本身不會幫助您記錄您在客戶端代碼中執行的所有JOIN(可能並非所有的「謊言」都在FK之上)。

要麼始終通過視圖JOIN(ER工具應該幫助您記錄),或者您需要有一個單獨的文檔僅用於JOIN。這可以是單獨的文檔,也可以嵌入源代碼級文檔中(實際啓動JOIN的代碼附近)。更喜歡第二個選項,因爲維護代碼的人在更新代碼和更改JOIN時更有可能更新文檔。

0
  • 蟾蜍數據建模
  • 歐文
  • Embarcadero公司

如果在一個企業工作,他們願意到餐桌在現金一些真正的工具。否則,請使用數據字典的ER圖和Microsoft Word的Visio組合。並且在所有情況下都有一定量的手肘潤滑脂。

圖片勝過千言萬語......但你需要學習如何繪製正確的圖片。