程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL AUTO_INCREMENT簡介

MySQL AUTO_INCREMENT簡介

編輯:MySQL綜合教程

MySQL AUTO_INCREMENT簡介   可使用復合索引在同一個數據表裡創建多個相互獨立的自增序列,具體做法是這樣的:為數據表創建一個由多個數據列組成的PRIMARY KEY OR UNIQUE索引,並把AUTO_INCREMENT數據列包括在這個索引裡作為它的最後一個數據列。這樣,這個復合索引裡,前面的那些數據列每構成一種獨一無二的組合,最末尾的AUTO_INCREMENT數據列就會生成一個與該組合相對應的序列編號。     我們經常要用到唯一編號,以標識記錄。在MySQL中可通過數據列的AUTO_INCREMENT屬性來自動生成。MySQL支持多種數據表,每種數據表的自增屬性都有差異,這裡將介紹各種數據表裡的數據列自增屬性。   1 用法:  

CREATE TABLE test
(
id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(15) NOT NULL
)AUTO_INCREMENT = 100;

 

  可在建表時可用“AUTO_INCREMENT=n”選項來指定一個自增的初始值。   可用alter table table_name AUTO_INCREMENT=n命令來重設自增的起始值。     說明:   (1)如果把一個NULL插入到一個AUTO_INCREMENT數據列裡去,MySQL將自動生成下一個序列編號。編號從1開始,並1為基數遞增。   (2)把0插入AUTO_INCREMENT數據列的效果與插入NULL值一樣。但不建議這樣做,還是以插入NULL值為好。   (3)當插入記錄時,沒有為AUTO_INCREMENT明確指定值,則等同插入NULL值。   (4)當插入記錄時,如果為AUTO_INCREMENT數據列明確指定了一個數值,則會出現兩種情況,情況一,如果插入的值與已有的編號重復,則會出現出錯信息,因為AUTO_INCREMENT數據列的值必須是唯一的;情況二,如果插入的值大於已編號的值,則會把該插入到數據列中,並使在下一個編號將從這個新值開始遞增。也就是說,可以跳過一些編號。   (5)如果用UPDATE命令更新自增列,如果列值與已有的值重復,則會出錯。如果大於已有值,則下一個編號從該值開始遞增。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved