[技術討論]多使用者(多公司)的資料庫設計討論
劉睿 10:24:16
如果一個資訊是多使用者(多公司)的這種,資料庫該雜個設計呢
青潤 10:32:53
多公司?什麼多公司,你的業務原型是什麼樣子的。
劉睿 10:33:36
就是一個資訊系統,是要有幾個公司用的,互相不干擾
劉睿 10:34:00
本來我是想一個公司一個資料庫,但我又覺得好像沒得好大必要一樣的
劉睿 10:34:34
就像kingde的K3系統一樣,他們就是一個帳套就是一個資料庫
青潤 10:34:49
沒關係呀,許可權設定好了就無所謂。
青潤 10:34:59
和一個公司的系統同樣設計就行了。
劉睿 10:35:35
那很多表上就要加一個公司這個欄位了呀
青潤 10:38:44
表和什麼關聯?
公司裡面有人,表裡面如果有人這個關係,那也是一樣表述,就不需要增加公司欄位了。
劉睿 10:40:25
比如我一個訂單,我如果要查一個公司下的所有訂單,那不是比較麻煩了,還要先匹配一個公司下所有人員還把這些人員的所有訂單查出來
青潤 10:40:39
建立檢視,進行搜尋。
劉睿 10:41:06
mysql 支援檢視嗎?
青潤 10:41:09
資料庫檢視就可以做到。
青潤 10:41:18
這個我不太清楚,你可以去查一下。一般都支援。
青潤 10:42:07
另外,一個公司的人進行操作,操作的時候,他的session或者標示中就應該帶有公司屬性,一個人不可能讓他去查詢另一個公司的訂單情況。
劉睿 10:44:00
這個我知道,但是大量的查詢是基於公司的,比如查整個一個公司的訂單,
青潤 10:45:49
這個應該是業務邏輯中做好的設計。
一個普通員工查詢,只能查詢屬於他本人的訂單情況。
一個公司總經理或者市場總監之類的人才能查詢整個公司的訂單情況,
而且,這兩個應該是在他進入訂單介面就直接查詢出來的東西,而不是事後搜尋關鍵詞匹配的,可以考慮對人員進行分類,只有幾個職位的屬性必須佩帶公司資訊,其他的就可以不帶。業務實現中也比較容易。
劉睿 10:46:54
每個人都要帶上公司屬性噠,因為不能查到其它公司的資訊了
劉睿 10:47:08
包括整個工作平臺
青潤 10:47:34
我認為沒必要,因為一個人的查詢,根據他的個人id編號進行就足夠了,不可能id編號出現雷同現象。
劉睿 10:47:37
你的意思只用在人員表上加一個公司欄位就行了?
青潤 10:47:49
人員表裡面本來就必須有公司欄位的。
青潤 10:48:12
前面那個問題,你考慮得過於複雜了,實際上只要有人員id,就不可能出現兩個公司的東西被一個人查詢出來的現象。
劉睿 10:50:04
你的意思說多使用者設計不用單獨考慮?
青潤 10:52:26
除了少數公司負責人崗位的考慮外,其他的都不需要考慮。
青潤 10:53:18
也就是說,這個資料表的修改和業務模組的改動量並不大,前提是考慮清楚業務關係的實現,同時你的業務系統本身已經設計完美了——如果需要改動,往往是最後這個做得不好
劉睿 10:54:15
我是在做一個進銷存軟體,是一個集團公司下多個公司用的,不過是訂單,還有庫存,銷售,所以我一開始是考慮是多個資料庫
青潤 10:54:33
呵呵,沒那麼複雜。
劉睿 10:54:55
那庫存也總要單獨帶公司屬性吧
劉睿 10:55:39
你的意思是直接在原來的系統上,現在我要變成多公司用的,只用在幾張表上加上公司欄位就OK了
青潤 10:56:43
是的。
劉睿 10:57:05
3Q
青潤 10:58:27
不客氣,呵呵。
如果一個資訊是多使用者(多公司)的這種,資料庫該雜個設計呢
青潤 10:32:53
多公司?什麼多公司,你的業務原型是什麼樣子的。
劉睿 10:33:36
就是一個資訊系統,是要有幾個公司用的,互相不干擾
劉睿 10:34:00
本來我是想一個公司一個資料庫,但我又覺得好像沒得好大必要一樣的
劉睿 10:34:34
就像kingde的K3系統一樣,他們就是一個帳套就是一個資料庫
青潤 10:34:49
沒關係呀,許可權設定好了就無所謂。
青潤 10:34:59
和一個公司的系統同樣設計就行了。
劉睿 10:35:35
那很多表上就要加一個公司這個欄位了呀
青潤 10:38:44
表和什麼關聯?
公司裡面有人,表裡面如果有人這個關係,那也是一樣表述,就不需要增加公司欄位了。
劉睿 10:40:25
比如我一個訂單,我如果要查一個公司下的所有訂單,那不是比較麻煩了,還要先匹配一個公司下所有人員還把這些人員的所有訂單查出來
青潤 10:40:39
建立檢視,進行搜尋。
劉睿 10:41:06
mysql 支援檢視嗎?
青潤 10:41:09
資料庫檢視就可以做到。
青潤 10:41:18
這個我不太清楚,你可以去查一下。一般都支援。
青潤 10:42:07
另外,一個公司的人進行操作,操作的時候,他的session或者標示中就應該帶有公司屬性,一個人不可能讓他去查詢另一個公司的訂單情況。
劉睿 10:44:00
這個我知道,但是大量的查詢是基於公司的,比如查整個一個公司的訂單,
青潤 10:45:49
這個應該是業務邏輯中做好的設計。
一個普通員工查詢,只能查詢屬於他本人的訂單情況。
一個公司總經理或者市場總監之類的人才能查詢整個公司的訂單情況,
而且,這兩個應該是在他進入訂單介面就直接查詢出來的東西,而不是事後搜尋關鍵詞匹配的,可以考慮對人員進行分類,只有幾個職位的屬性必須佩帶公司資訊,其他的就可以不帶。業務實現中也比較容易。
劉睿 10:46:54
每個人都要帶上公司屬性噠,因為不能查到其它公司的資訊了
劉睿 10:47:08
包括整個工作平臺
青潤 10:47:34
我認為沒必要,因為一個人的查詢,根據他的個人id編號進行就足夠了,不可能id編號出現雷同現象。
劉睿 10:47:37
你的意思只用在人員表上加一個公司欄位就行了?
青潤 10:47:49
人員表裡面本來就必須有公司欄位的。
青潤 10:48:12
前面那個問題,你考慮得過於複雜了,實際上只要有人員id,就不可能出現兩個公司的東西被一個人查詢出來的現象。
劉睿 10:50:04
你的意思說多使用者設計不用單獨考慮?
青潤 10:52:26
除了少數公司負責人崗位的考慮外,其他的都不需要考慮。
青潤 10:53:18
也就是說,這個資料表的修改和業務模組的改動量並不大,前提是考慮清楚業務關係的實現,同時你的業務系統本身已經設計完美了——如果需要改動,往往是最後這個做得不好
劉睿 10:54:15
我是在做一個進銷存軟體,是一個集團公司下多個公司用的,不過是訂單,還有庫存,銷售,所以我一開始是考慮是多個資料庫
青潤 10:54:33
呵呵,沒那麼複雜。
劉睿 10:54:55
那庫存也總要單獨帶公司屬性吧
劉睿 10:55:39
你的意思是直接在原來的系統上,現在我要變成多公司用的,只用在幾張表上加上公司欄位就OK了
青潤 10:56:43
是的。
劉睿 10:57:05
3Q
青潤 10:58:27
不客氣,呵呵。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/257598/viewspace-683265/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [技術討論]關於低耦合開發的討論
- ORACLE技術中國使用者討論組Oracle
- [技術討論]資料許可權中的理論和實際
- [技術討論]遊戲AI設計與機器智慧遊戲AI
- 資訊化技術討論組
- [技術討論]什麼是最好的軟體設計方法
- [技術討論]交換程式設計實踐與延續程式設計
- 資料庫系統架構討論資料庫架構
- 關於大資料和資料庫的討論大資料資料庫
- [技術討論]程式設計師的基本技能和素質程式設計師
- 有沒有一些大廠的高階架構技術討論討論架構
- [技術討論]業務建模和使用者業務的關係
- 表結構設計討論
- [技術討論]Uml工具哪個更好
- [技術討論]務實與務虛
- 多層架構的討論,歡迎拍磚架構
- [技術討論]科學基礎的分析和探討對話
- 資料分析主題討論
- [技術討論]程式碼除錯,程式設計師的基本功除錯程式設計師
- [討論]資料庫設計,ER 中的實體關係如何確認?資料庫
- 資料庫設計中的反規範技術探討(轉)資料庫
- 討論設計模式和00思想設計模式
- [討論]“消滅”程式設計師?程式設計師
- 關於資料庫作業系統的討論資料庫作業系統
- 資料蔣堂 | 資料分段討論
- oracle使用者討論組Oracle
- SetUnhandledExceptionFilter 的討論ExceptionFilter
- 今日技術誰當家?——ThoughtWorks技術雷達討論
- 關於如何節約資料庫連線的討論?資料庫
- [技術討論]軟體的產品、技術、標準對話
- 設計模式討論之abstract factory篇設計模式
- [iOS Monkey 討論帖] 整套新的 fastmonkey 討論iOSAST
- [技術討論]做事一定要有方法
- Oracle 資料庫分散式技術的探討Oracle資料庫分散式
- ORACLE中國使用者討論組Oracle
- 中國ORACLE使用者討論組Oracle
- 請多討論問題,而不是解決方案 - frankel
- [技術討論]06年12月結對程式設計與交換程式設計的對話程式設計