2013-07-17 34 views
0

我讀的地方,是不好用你的數據庫表的主鍵作爲公共標識在線。但是,我希望我的用戶鏈接到表中的特定對象。如何創建一個獨特的公共ID列這是不是主鍵

如何創建一個唯一標識符列我的表與主鍵無關(這是一個自動增量整數)?

我最初的想法是使用PHP腳本生成適當長度的隨機十六進制值(將有大約100 000-200 000項我的桌子頂多我認爲),然後把它們插入。但我不知道這將是獨一無二的......

回答

0

您可以使用GUID(全局唯一標識符)以唯一標識記錄。可能的GUID數量如此之高,複製一個的機率幾乎沒有。同樣,有人猜測GUID的機率是如此之低,通常它們是安全的,以顯示給用戶(例如www.yoursite.com?id=21EC20203AEA1069A2DD08002B30309D)。

如果你正在使用PHP,你可以使用com_create_guidmethod。 *注意:此方法僅在PHP5中受支持。對於PHP4,請看uniqueid

+0

Yept,這通常是我的方式來處理這方面的需要,除了我在Java中使用的UUID:http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html。我知道GUID是微軟稱之爲他們的方式。 – zakmck

相關問題