我們公司有一個數據庫設計的情況。我們試圖找出設計數據庫來存儲事務數據的最佳方式。我需要專家對最佳關係設計的建議來實現它。問題:例如,我們的系統中有不同類型的「實體」客戶,服務,經銷商等。這些實體之間正在進行資金轉移。我們需要在數據庫中存儲傳輸的歷史記錄。複雜的數據庫設計
解決方案:轉移
- 一個表和另一個表,以保持「帳戶」的信息。有三個表格「客戶」,「服務」,「經銷商」。還有另一個表「帳戶」。帳戶可以與上述任何「實體」相關聯;這意味着(這就是要求),從邏輯上說,實體和賬戶之間應該存在一對一的關係。但是,我們只能將Account_ID存儲在Entities表中,但我們無法將實體的外鍵存儲在Accounts表中。這裏的問題發生在數據庫設計方面。因爲如果有客戶的帳戶,它不受數據庫設計的限制,不會被存儲在服務表等中。現在我們只能將所有傳輸保留在一個表中,因爲帳戶在所有實體之間是統一的。
- 將餘額信息保留在表主實體表中,併爲所有傳輸保留單獨的表。這裏對於實體之間的所有類型的轉移,我們保留單獨的表格。例如,客戶和服務提供商之間的轉賬將存儲在名爲「支出」的表格中。另一個表格將具有用於在服務和經銷商之間傳輸的傳輸數據,稱爲「佣金」等。在這種情況下,我們並沒有將所有資金轉移存儲在單個表格中,但是由於表格「支出」和「委員會」僅在兩個具體實體之間。
根據最佳實踐,上面給出的哪一種解決方案是正確的,爲什麼?
有關最佳實踐的問題必須通過數個世紀值得關於複式簿記的實踐來告知。在某種程度上,數字革命已經使這些做法中的一些過時了。但其中許多仍然是良好的做法,甚至可能是「最佳做法」。爲什麼總賬系統不屬於企業解決方案的一部分,即使您必須自行推出才能將其與其他數據要求集成在一起? –
當我問到最佳實踐時,我的意思是根據數據庫模式設計的最佳實踐,而不是會計。現在問題是數據庫模式,總帳系統將建立在我提到的帳戶之上。在課程之外,我無法在一個問題中解釋完整的數據庫。 –
我知道它是關於一個模式。我的意見旨在向您指出在數據庫會計領域發佈的模式,它們完全符合您所要做的事情,跟蹤涉及客戶,經銷商和服務的交易。 –