0
爲多租戶應用程序,我們有以下的數據庫設計: 數據庫設計的多租戶應用
它是基於共享數據庫的方法。既然我們確定使用公司ID租戶(每個公司都有一套不同的員工和他們的任務等),我的問題是
我們需要在任務表中的companyId鍵也讓每一個記錄 的任務可以使用公司Id或OR明確標識,我們應該始終使用Join?
因爲如果我們在任務中使用companyId將不會是一個適當規範化的數據庫,因爲任務將涉及公司和員工,這也與公司有關。
任何id(Employeeid,CompanyId,TaskId)是數據庫工件,對用戶不可見,不能由用戶以任何方式操作。 –
同意它不能被用戶操縱。當你有新的租戶將使用類似的ID給現有的租戶時,麻煩就會發生。要麼你的應用程序邏輯必須覆蓋,否則你可能會突然間出現錯誤的結果。我的建議是在桌面上確保不同的租戶數據可以存活,而不會對數據施加任何條件。 –
他們不會使用相同的ID:例如,在不同的公司中有兩名同名的員工:**公司A的員工James **的ID爲45,但Z公司的詹姆斯的ID爲678.用戶訪問員工:James,但如果他是A公司的用戶,ID是45,但如果來自Z公司的用戶是678. –