我們有今天早上有關如何將應存儲我們的ID爲我們製作了一些資產,我們已經在我們的數據庫中,descusion產生一點點熱量,所以我決定來諮詢的SO專家會議。爲主鍵使用項目特定的前綴和自動編號?
表結構即我相信,我們應該有(短版)是這樣的:
實施例1)
- 由assetid - INT(32) - 主鍵
- 類型 - 字符串
所以一些示例數據是這樣的:
==AssetId======Type===
12345 "Manhole"
155415 "Pit"
等
團隊的另一名成員建議是這樣的:
例2)
- 由assetid - 字符串 - 主鍵
- 類型 - 字符串
所以一些示例性數據是這樣的:
==AssetId======Type===
"MH12345" "Manhole"
"P155415" "Pit"
,我們做的那種類型的短版本,並將它附加到ID的前面,並將其存儲在數據庫中。我見過一些資產數據庫可以做到這一點,並且從來沒有真正採用這種方法。
我從來沒有真正喜歡使用字符串爲排列原因ID的想法。無論如何,當您已經擁有資產商店類型時,我也覺得它只是爲了存儲無用的信息。
你會採取什麼方法?爲什麼?使用2號方法1有什麼好處?
編輯:是的,我將使用AUTO_INCREMENT的方法1.
似乎有幾個答案 - 包括當前接受的答案 - 誤解了例2作爲自然主鍵,即包含實際業務數據的鍵。也許你可以稍微澄清一點,因爲示例2中的鍵似乎只是代理鍵 - 它們與行的業務數據沒有關係 - 但帶有額外的表指定前綴。 – 2009-12-18 06:44:08