一、MySQL中的自增主鍵的步長有關的變量AUTO_INCREMENT_INCREMENT與AUTO_INCREMENT_OFFSET
因為MySQL中的和自增主鍵的步長有關的變量:AUTO_INCREMENT_INCREMENT與AUTO_INCREMENT_OFFSET是有需求才有實現。表維度上的這種功能沒什么用處.當M-M架構時. 設置AUTO_INCREMENT_INCREMENT與AUTO_INCREMENT_OFFSET,是減少主鍵沖突的一種方式。
在 MySQL 中,當主鍵定義為自增長后,這個主鍵的值就不再需要用戶輸入數據了,而由數據庫系統根據定義自動賦值。每增加一條記錄,主鍵會自動以相同的步長進行增長。
通過給字段添加 AUTO_INCREMENT 屬性來實現主鍵自增長。語法格式如下:
字段名 數據類型 AUTO_INCREMENT
默認情況下,AUTO_INCREMENT 的初始值是 1,每新增一條記錄,字段值自動加 1。
一個表中只能有一個字段使用 AUTO_INCREMENT 約束,且該字段必須有少數索引,以避免序號重復(即為主鍵或主鍵的一部分)。
AUTO_INCREMENT 約束的字段必須具備 NOT NULL 屬性。
AUTO_INCREMENT 約束的字段只能是整數類型(TINYINT、SMALLINT、INT、BIGINT 等)。
AUTO_INCREMENT 約束字段的最大值受該字段的數據類型約束,如果達到上限,AUTO_INCREMENT 就會失效。
延伸閱讀:
二、SQL是什么
Structured Query Language
‘SQL’是結構化查詢語言,是一種用來操作?RDBMS?的數據庫語言,當前關系型數據庫都支持使用SQL語言進行操作,也就是說可以通過?SQL?操作 oracle,sql server,mysql,sqlite 等等所有的關系型的數據庫
SQL語句主要分為:DQL:數據查詢語言,用于對數據進行查詢,如select**
DML:數據操作語言,對數據進行增加、修改、刪除,如insert、udpate、delete**
TPL:事務處理語言,對事務進行處理,包括begin transaction、commit、rollback
DCL:數據控制語言,進行授權與權限回收,如grant、revoke
DDL:數據定義語言,進行數據庫、表的管理等,如create、drop
CCL:指針控制語言,通過控制指針完成表的操作,如declare cursor對于web程序員來講,重點是數據的crud(增刪改查),必須熟練編寫DQL、DML,能夠編寫DDL完成數據庫、表的操作,其它語言如TPL、DCL、CCL了解即可SQL 是一門特殊的語言,專門用來操作關系數據庫不區分大小寫