Mysql 自动增长 重置

重置 MySQL 自增列 AUTO_INCREMENT 初时值
注意, 使用以下任意方法都会将现有数据删除.

方法一:
delete from tb1;
ALTER TABLE tbl AUTO_INCREMENT = 100;
(好处, 可以设置 AUTO_INCREMENT 为任意值开始)
提示:如果表列和数据很多, 速度会很慢, 如90多万条, 会在10分钟以上.

方法二:
truncate tb1;
(好处, 简单, AUTO_INCREMENT 值重新开始计数.)

怎么重置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;
3.drop和create重建表方式重置自增列为0

DROP TABLE table_name;
CREATE TABLE table_name { ... };

时间: 2024-10-07 07:57:26

Mysql 自动增长 重置的相关文章

设置MySQL自动增长从某个指定的数开始

设置一个自增字段,必须为primary key. 设置uid以1001开始自增长. CREATE TABLE `user` ( `uid` int(11) NOT NULL PRIMARY KEY, `username` varchar(20) DEFAULT NULL, `password` varchar(40) DEFAULT NULL, `email` varchar(20) DEFAULT NULL, `phone` varchar(15) DEFAULT NULL, `createt

mysql自动增长怎么恢复从1开始

alter table table_name AUTO_INCREMENT 3;

mysql字段是自动增长类型结果却不是连续的

今天建了一张表,设置其"id"属性为自动增加类型,但是在查看所有数据的时候,却发现"id"的值不是连续增加的.建表的语法如下: mysql> create table person_list -> ( -> id int auto_increment unique, -> name varchar(15) not null, -> sex varchar(15) default "中", -> ID_C var

Mysql,SqlServer,Oracle主键自动增长的设置

1.把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如:   customers(id  auto_increment    , name (  customers(name)  id  customers; 以上sql语句先创建了customers表,然后插入两条记录,在插入时仅仅设定了name字段的值.最后查询表中id字段,查询结果为: 由此可见,一旦把id设为auto_increment类型,mys

mysql把主键定义为自动增长标识符类型

分享下mysql中如何把主键定义为自动增长标识符类型. 1.把主键定义为自动增长标识符类型在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: create table customers(id int auto_increment primary key notnull, name varchar(15)); insert into customers(name) values("name1"),("name2");

mysql设置主键自动增长

创建数据库,创建表. Sql代码   mysql> create database ssh2; Query OK, 1 row affected (0.04 sec) mysql> use ssh2; Database changed mysql> create table user( -> id integer primary key, -> firstname varchar(200) not null, -> lastname varchar(200) not n

SQLite Expert 删除表数据并重置自动增长列

用下面的语句肯定是行不通的,语句不支持 truncate table t_Records 方法:1.删除表数据 delete from t_Records where 1==1 2.重置自动增长列 update sqlite_sequence set seq=0 where name='t_Records' /*name :是表名*/ SQLite Expert软件网址:  http://www.sqliteexpert.com/

mysql——主键自动增长&唯一索引

首先说一下主键和唯一索引的区别 主键:一个数据库的一张表有且仅有一个主键,而且主键不能重复 唯一索引:一个数据库的一张表上唯一索引可以有多个,只是所在唯一索引上的值不能重复,这一点和主键一样 下面我们创建一个有主键有唯一索引的,并且主键是自动增长 create table demo (id int primary key auto_increment, name char(10) unique key, age int); 接下来我们插入数据看看 mysql--主键自动增长&唯一索引 原文地址:

mysql 约束条件 auto_increment 自动增长起始值 布长 起始偏移量

我们指定一个字段为自动增长,他默认从1开始自动增长,默认值为1,每次增长为1,步长为1 模糊查询 like % 代表任意个数字符 任意字符长度 查看mysql正在使用变量 show variables like “auto_inc%” mysql> show variables like "auto_inc%" ; +--------------------------+-------+ | Variable_name | Value | +-------------------