mysql怎么修改自增长 mysql修改自增长值

如何修改MySql自增列的值

1、清空表,恢复到初始值:

创新互联是一家专注于做网站、成都做网站与策划设计,丽江网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:丽江等地区。丽江做网站价格咨询:028-86922220

2、修改为任意值:

上述语句中,table_name为表名,15为要修改的值,这样下次插入的数据的自增列的值就是15。

若修改的值与现有数据冲突,会自动修改为当前最大值+1。

如图所示,修改自增列id为11,虽然显示修改成功,但是id=11已经是现有值,再插入时会自动把自增列的值变为当前最大值(14)加1,也就是15

修改mysql中自增序列的值,恢复初始值

两种方法修改或者重置mysql中的自增字段的值:autoIncrement;

其中方法二可以修改成任意值。

mysql自增ID跳跃增长

#1、查看现在mysql自增id的配置

show variables like '%increment%';

#2、下面步长为2的增长

+-------------------------------+-------+

| Variable_name                 | Value |

+-------------------------------+-------+

| auto_increment_increment      | 2    |

| auto_increment_offset         | 1     |

| div_precision_increment       | 4     |

| innodb_autoextend_increment   | 8     |

| ndb_autoincrement_prefetch_sz | 32    |

+-------------------------------+-------+

5 rows in set (0.01 sec)

#3、解决

set auto_increment_increment = 1和set @@auto_increment_increment = 1

如果想永久性的改回为1,在my.cnf or my.ini中查找这个field,然后修改,然后restart mysql.

2020-01-16 控制MYSQL的自增长序列的起始值

一、修改自增长序列的值

alter table table_name auto_increment=n;

注意:n只能大于已有的auto_increment的整数值,小于的值无效.

show table status like 'table_name' 的返回结果里的auto_increment列就是表的现有值.

二、控制主键的起点

create table 表名

(

......

) engine=INNODB auto_increment=1001 default charset=gbk;

三、自增主键归零

如果曾经的数据都不需要的话,可以直接清空所有数据,并将自增字段恢复从1开始计数

truncate table 表名

四、获取自增主键

通过SQL select LAST_INSERT_ID()函数

通过SQL @@IDENTITY 变量

五、说明

AUTO_INCREMENT数据列必须有唯一索引,以避免序号重复。

AUTO_INCREMENT数据列必须具备NOT NULL属性。

设置AUTO_INCREMENT属性的数据列应该是一个正数序列,所以应该把该数据列声明为UNSIGNED,这样序列的编号个可增加一倍。


新闻标题:mysql怎么修改自增长 mysql修改自增长值
标题来源:http://myzitong.com/article/dddhjoc.html