SQL中的自增(AUTO_INCREMENT)字段

本文主要介绍 SQL 中的自增字段。

1 概述

AUTO_INCREMENT 会在新记录插入表中时,生成一个唯一的数字。

如果我们希望在每次插入新记录时,自动地创建主键字段的值,那么就可以在表中创建一个 AUTO_INCREMENT 字段。

2 用法

例如,使用下列语句表customers,同时将主键customer_id设置为自增,如下:

mysql> create table customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
Query OK, 0 rows affected (0.03 sec)

3 说明

1. 如果把一个 NULL 插入到一个 AUTO_INCREMENT 数据列里,MySQL 将自动生成下一个序列编号。序列编号从1开始,并以1为基数递增;

2. 把 0 插入 AUTO_INCREMENT 数据列的效果,与插入 NULL 值一样,但不建议这样做,最好还是直接插入NULL值;

3. 在插入记录时,如果没有为 AUTO_INCREMENT 数据列明确指定值,则等同插入 NULL 值;

4. 在插入或更新记录时,如果为 AUTO_INCREMENT 数据列明确指定了一个数值,则会出现两种情况:情况一,如果插入的值与已有的编号重复,则会出现错误信息,因为 AUTO_INCREMENT 数据列的值必须是唯一的;情况二,如果插入的值大于已编号的值,则会把该值插入到数据列中,并使 AUTO_INCREMENT 数据列的下一个编号从这个新值开始递增(即跳过了一些编号)。


猜你喜欢

转载自blog.csdn.net/liitdar/article/details/81018214