mysql怎么改变自增,mysql中自动增长的值如何进行修改

怎么重置mysql的自增列

1.

成都创新互联公司专注于郫都网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供郫都营销型网站建设,郫都网站制作、郫都网页设计、郫都网站官网定制、微信小程序定制开发服务,打造郫都网络公司原创品牌,更为您提供郫都网站排名全网营销落地服务。

支持设置自增列的值

ALTER

TABLE

table_name

AUTO_INCREMENT

=

1;

不过这种方式只能设置大于当前使用的值,不能设置小于等于当前已经使用的自增列的值。myisam如果设置小于等于,则自增列的值会自动设置为当前最大值加1。innodb则不会改变。

2.通过TRUNCATE把自增列设置为0,从MySQL

5.0.13开始TRUNCATE就能重置自增列为0.myisam和innode都是如此。

TRUNCATE

TABLE

table_name;

注意:TRUNCATE

会清空表中数据

3.drop和create重建表方式重置自增列为0

DROP

TABLE

table_name;

CREATE

TABLE

table_name

{

...

};

如何修改MySql自增列的值

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

2、修改为任意值:

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

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

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

mysql如何设置ID自增

设置自增列

MYSQL的自增列一定要是有索引的列,设置种子值要在表的后面设置

--mysql

-- 设置自增ID从N开始

CREATE TABLE empautoinc(

ID INT PRIMARY KEY AUTO_INCREMENT

) AUTO_INCREMENT = 100 ; --(设置自增ID从100开始)

insert into empautoinc(id) values(null);

Query OK, 1 row affected (0.00 sec)

mysql select * from empautoinc;

+-----+

| ID |

+-----+

| 100 |

+-----+

1 row in set (0.00 sec)

show table status like 'empautoinc'G;

*************************** 1. row ***************************

Name: empautoinc

Engine: InnoDB

Version: 10

Row_format: Compact

Rows: 1

Avg_row_length: 16384

Data_length: 16384

Max_data_length: 0

Index_length: 0

Data_free: 0

Auto_increment: 101

Create_time: 2016-10-27 01:50:32

Update_time: NULL

Check_time: NULL

Collation: utf8_general_ci

Checksum: NULL

Create_options:

Comment:

1 row in set (0.00 sec)

设置自增列的步长,可以分为全局级别和会话级别

如果是会话级别,那么当用户新建一个会话的时候,那么步长又回到了全局级别,所以mysql的步长跟sqlserver的步长有很大的不同

mysql不能设置为 表级别 的步长

私信666领取资料


当前题目:mysql怎么改变自增,mysql中自动增长的值如何进行修改
转载来源:http://myzitong.com/article/hscsie.html