我正在構建我正在開發的項目的下層數據庫結構的中間,並且我希望從DB精明的人員那裏得到關於此的一般性建議。具有時間第三維的數據庫結構
我將存儲在人的信息,即:
id | name | position | ...
----+------+------------+----
1 | Me | Programmer | ...
----+------+------------+----
... | ... | ... | ...
我要關注的關鍵是如何存儲有關的位置和其他類似領域的信息,因爲我希望他們有時間元素使矩陣3維。我希望能夠提取數據,它可以告訴當一個人佔據一個特殊的位置,即:
Me | 2009-2011 Programmer | 2011-2013 Project Coordinator
爲了實現這一目標,這將是最合適的 - 有保存所有這些數據的一個領域,還是有許多領域每個都只有很少的數據?
1)要使用XML作爲我可以提取,處理和在放回,如字段的內容:
<person name="Me">
<position from="2009" to="2011">Programmer</position>
<position from="2011" to="2013">Project Coordinator</position>
</person>
2)爲了使另一個表類同這一個:
id | person_id | position | date_from | date_to
----+-----------+------------+-----------+--------
1 | 1 | Programmer | 2009 | 2011
----+-----------+------------+-----------+--------
2 | 1 | Proj. Cord.| 2011 | 2013
編輯:
id | person_id | type (/type_id) | content | date_from | date_to
----+-----------+---------------------+----------+-----------+--------
1 | 1 | Position (/1) | Program. | 2009 | 2011
----+-----------+---------------------+----------+-----------+--------
2 | 1 | Position (/1) | Proj.Cor.| 2011 | 2013
----+-----------+---------------------+----------+-----------+--------
3 | 1 | Organization (/2) | Webbureau| 2011 | 2013
編輯結束
然後只提取屬於這個人的每個領域?
如何從一個領域提取大量數據與來自多個領域的小數據之間的權衡(理論上說,因爲我將創建的領域最多將爲xml的100-150行左右,先決條件)。還是有更好的方法來創建一個三維數據庫?
在此先感謝
我明白了!然後,您會將該字段的「類型」(即位置,培訓,組織 - 請參閱已編輯的問題2)與另一個包含定義的數據庫表關聯起來,還是隻將這些類型直接寫入表中?在表格成爲問題之前,表格能夠保存多少記錄? –
看到我的編輯... –
謝謝Philippe! –