AUTO_INCRMENT 屬性用於為新行產生唯一識別。如果列被宣告為“NOT NULL”,則可以將 NULL 指派給該欄位以產生數字序列。
當任何值插入 AUTO_INCREMENT 列時,該列將被設定為該列值,並且序列也會被重置,以便它在最大列值的順序範圍內自動產生值。
可以更新現有的「AUTO_INCRMENT」欄位,這也會重置「AUTO_INCRMENT」序列。最新自動產生的‘AUTO_INCRMENT;可以使用 SQL 中的「LAST_INSERT_ID()」函數或使用 C API 函數「mysql_insert_id()」來擷取值。
這些函數是特定於連接的,這意味著它們的返回值不是受執行插入操作的其他連接的影響。可以使用「AUTO_INCRMENT」欄位的最小整數資料類型,該資料類型足夠大以容納使用者所需的最大序列值。
使用 AUTO_INCRMENT 屬性時需要遵循下列規則 -
每個資料表只有一個 AUTO_INCRMENT 資料列,其資料型別為 通常為整數。
AUTO_INCREMENT 欄位需要建立索引。這意味著它可以是 PRIMARY KEY 或 UNIQUE 索引。
AUTO_INCRMENT 欄位必須具有 NOT NULL 限制條件。
當 AUTO_INCREMENT 時屬性設定為列,MySQL自動加入 對列本身的 NOT NULL 限制。
如果id 列尚未新增到表中,則可以使用以下語句-
ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);
如果id 列已經存在,則可以使用以下命令-
ALTER TABLE tableName AUTO_INCREMENT=specificValue;
這裡,tableName是指需要設定「AUTO_INCRMENT」欄位的表格的名稱。 「specificValue」是指使用者指定「AUTO_INCRMENT」值開始的整數。
以上是MySQL中如何設定初始值和自增?的詳細內容。更多資訊請關注PHP中文網其他相關文章!