? ? MySQL 是一種關系型數據庫,它是世界上最流行的關系型數據庫之一。在 MySQL 中,自增是一種非常有用的功能,它可以自動給主鍵賦值,并保證每個主鍵是唯一的。然而,許多人不知道的是,MySQL 默認情況下從 1 開始自增,這并不總是適合所有情況。
? ? 在 MySQL 中,我們可以通過在創建表時明確指定自增開始值和步長來更改自增值的初始值。例如:
CREATE TABLE example (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(50)
) AUTO_INCREMENT=1000;
? ? 在上面的例子中,我們明確設置自增初值為 1000。這意味著在向 example 表插入第一條記錄時,id 的值將是 1000,而不是默認值 1。
? ? 類似地,在更改步長時,我們可以這樣做:
CREATE TABLE example (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(50)
) AUTO_INCREMENT=1 INCREMENT BY 2;
? ? 在上面的例子中,我們將步長更改為 2。這意味著,在向 example 表插入第一條記錄時,id 的值將為1,第二條記錄為 3,第三條記錄為 5,以此類推。
? ? 如果想設置自增 id?的值從 0 開始,同樣可以通過設置 “AUTO_INCREMENT=0” 來實現。
CREATE TABLE test_table (
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
data VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=0;
? ? 總之,MySQL 的自增特性非常有用,它可以自動為我們生成唯一的主鍵。然而,在某些情況下,我們可能需要更改自增初值和步長的默認值1。因此,我們只需要在創建表時明確指定即可。