mysql auto | 您所在的位置:网站首页 › mysql新增一条记录 › mysql auto |
MySQl自增列起始与步长 自增初始值 一、alter的使用 默认初始值为1 步长为1的情况 1、建表 2、插入数据当插入数据可以看到步长为1,起始值为1 3.增加一列数据时 默认在加上步长 4.删除后在原表后增加一列数据的情况 原表数据剔除后依旧在原基础上递增,这里和delete from 有关
5.修改auto_increment后,插入一行数据后,原表递增情况 alter table 表名 auto_Increment=n; (1)、未改变:原表内有一行数据 auto_increment修改 初始值依旧为1,步长为1
(2)当原表内无数据时,auto_Increment alter后会发生改变 初始值为设定值,步长依旧为1 a、使用delete from 删除时
b、使用truncate table use 删除时
二、在新建表时设定auto_increment (1)、建表时设定auto_increment 的值初始值可变,步长不变
步长 自增步长 基于会话级别: show session variables like 'auto_inc%"; --查看会话步长
set session auto_increment_increment=4; 这里新建了一个初始值为1的值,通过set sessionauto_increment_increment 步
set session auto_increment_offset=2; --设置自增起始值为2; 通过truncate table user_set 后重新设定起始值 可以看到这里起始值变成了2(由于上面设定了auto_increment_Increment的值,当前窗口口未结束,故步长还是为4)
基于全局级别 show global variables like 'auto_inc%"; --查看全局步长 set global auto_increment_increment=3; --设置全局步长为3 (关闭会话,再进行数据库操作不恢复到默认值) set global auto_increment_offset=2; --设置自增起始值为2; 总结: 设定自增初始值:alter table 表名 auto_Increment=n 通过alter方法设定初始值 如果原表有数据则自增初始值设定不生效 如果原表无数据,或者delete、truncate了则alter设定依旧生效,步长某人为1
建表时设定auto_increment=某值 即可设定初始值 注意delete from 表格后,自增初始值会紧跟上次数 使用truncate table 表格 则不会
通过set session auto_increment_Increment =某值,可以改变该窗口会话下的初始值,同样注意是否原数据,以及删除方式delete 与truncate的区别 set global auto_increment_increment= 某值 ,改变全局步长,步推荐 设定自增步长: set session auto_increment_increment=4; set global auto_increment_increment=3; --设置全局步长为3 (关闭会话,再进行数据库操作不恢复到默认值) |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |