首頁  >  文章  >  資料庫  >  mysql自增健有什麼用?

mysql自增健有什麼用?

little bottle
little bottle原創
2019-05-08 15:05:506248瀏覽

在資料庫表設計中會糾結於”自然鍵”和”代理鍵”的選擇,自然鍵在實現數據“軟刪除”時實現比較複雜,部分自然鍵因為鍵值過長或多列組合導致不適合作為表主鍵,而比較常見兩種代理鍵為自增列(auto incremnet)和全域唯一識別列(GUID)。接下來將和大家聊聊自增鍵。

mysql自增健有什麼用?

mysql中是使用資料庫提供的自增數值型欄位作為自增主鍵。

優點: 

(1)資料庫自動編號,速度快,而且是增量成長,依序存放,對於檢索非常有利; 

(2)數字型,佔用空間小,易排序,在程式中傳遞也方便; 

(3)如果透過非系統增加記錄時,可以不用指定該字段,不用擔心主鍵重複問題。 

說完優點順便說說它的缺點,其實它的缺點也就是來自其優點。

缺點: 

(1)因為自動成長,在手動要插入指定ID的記錄時會顯得麻煩,尤其是當系統與其它系統整合時,需要資料導入時,很難保證原系統的ID不會發生主鍵衝突(前提是老系統也是數位型的)。特別是在新系統上線時,新舊系統並行存在,並且是異庫異構的數據庫的情況下,需要雙向同步時,自增主鍵將是你的噩夢; 

(2)在系統整合或割接時,如果新舊系統主鍵不同是數字型就會導致修改主鍵資料類型,這也會導致其它有外鍵關聯的表的修改,後果同樣很嚴重; 

(3)若係統也是數位型的,在導入時,為了區分新老數據,可能想在老數據主鍵前統一加一個字符標識(例如“o”,old)來表示這是老數據,那麼自動增長的數字型又面臨一個挑戰。

以上是mysql自增健有什麼用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn