MySQL自增列之起始与步长

1. 自增列——起始:auto_increment --默认初始值为1,默认步长为1
代码演示:

--创建user表:
create table user (
ID int(4)primary key auto_increment,
name varchar(6) not null ,
age int (4) not null);--插入数据16条  运行了4次
insert into user(name,age) value ('haha',16);
insert into user(name,age) value ('coco',15);
insert into user(name,age) value ('momo',19);
insert into user(name,age) value ('xixi',20);

运行:ID 自增:

删除数据:

-- 删除表中数据
DELETE FROM `user`;
-- 再加一条数据
insert into user(name,age) value ('gogo',21);

自定义初始值:alter table 表名 auto_increment;

-- alter table user auto_increment=1;
-- insert into user(name,age) value ('gogo',21);
-- alter table user auto_increment=9;
insert into user(name,age) value ('gogo',21);

运行:

2. 自增列——步长

①MySQL:自增步长:

  • 基于会话级别:
    show session variables like 'auto_inc%"; --查看会话步长
    set session auto_increment_increment=4; --设置会话步长为4 (这里设置后关闭会话,再进行数据库操作会恢复默认值)
    set session auto_increment_offset=2; --设置自增起始值为2;

演示:(注意先把user表数据删除并把表的自增起始值设置为1,不然表的ID值的起始值达不到自己所期望的值,

DELETE FROM `user`;
alter table user auto_increment=1;
set session auto_increment_offset=2;
set session auto_increment_increment=4;
show session variables like  'auto_inc%';
insert into user(name,age) value ('gogo',21);
insert into user(name,age) value ('haha',16);
insert into user(name,age) value ('coco',15);
insert into user(name,age) value ('momo',19);
insert into user(name,age) value ('xixi',20);

结果:



关闭navicat再添加几条数据:结果:

  • 基于全局级别:

    show global variables like 'auto_inc%"; --查看全局步长
    set global auto_increment_increment=3; --设置全局步长为3 (关闭会话,再进行数据库操作不会恢复到默认值)
    set global auto_increment_offset=2; --设置自增起始值为2;

② sqlserver:自增步长:基于基础表级别

MySQL自增列之起始与步长相关推荐

  1. 修改 MySQL 自增ID的起始值

    修改 MySQL 自增ID的起始值 alter table users AUTO_INCREMENT=10000; posted on 2019-04-15 17:45 流易 阅读(...) 评论(. ...

  2. 修改mysql中自增列的起始值

    语句如下: alter table 表名 AUTO_INCREMENT = 这里写起始值; 例如:给user表的自增列字段设置起始值为20000 alter table user AUTO_INCRE ...

  3. mysql 自增列坏处_MySQL--更新自增列的潜在风险

    ##=====================================================================## 测试环境: MySQL版本:MySQL 5.7.19 ...

  4. mysql 单号,利用 MySQL 自增列生成订单号

    在 MySQL 里创建一个带有自增列的表,使用 MEMORY ENGINE 存储即可. 利用时间生成字符串,后面再加上自增列生成的数字,根据业务容量仅取最后几位,示例代码仅取后4位. namespac ...

  5. mysql 自增列 类型_MySQL--自增列学习

    ##=====================================================================================## 在数据库表设计中会纠 ...

  6. 特性介绍 | MySQL 自增列详解(1):自增列概念及使用

    本文首发于 2019-12-09 19:37:10 1. 概念 自增列,即 AUTO_INCREMENT,可用于为新的记录生成唯一标识. 要求: AUTO_INCREMENT 是数据列的一种属性,只适 ...

  7. mysql自增列修改方法_如何修改自增列值以及相应的解决方法

    今天工作中遇到特殊的一个任务,就是将两个自增列值的进行对调变更. SQL Server 平台修改自增列值 由于之前处理过sql server数据库的迁移工作,尝试过其自增列值的变更,但是通过SQL 语 ...

  8. mysql自增列语句_MySQL自增字段的常用语句

    学习MySQL数据库,MySQL自增字段是最基础的部分之一,下面为您介绍一些MySQL自增字段的常用语句,希望对您学习MySQL自增字段能些许帮助. 1.创建表格时添加: create table t ...

  9. Mysql自增列,并发插入时导致死锁的问题

    背景: 有一张表需要每天定时迁移数据,采用的SQL如下(表名已调整) insert into data_cache ( customerID,organizationID,createTime)( s ...

最新文章

  1. html列表拖拽排序插件,可对列表自由拖拽排序的jQuery插件
  2. linux-认识与分析日志
  3. 亮度均匀性 matlab,求:亮度保持的夜景图像直方图均衡算法 matlab程序
  4. crm 一级菜单排序,二级菜单选中并且展开,非菜单权限的归属,权限粒度控制到按钮级别...
  5. 3.认识和操作一下mysql的基本命令
  6. 网络请求中常见的加密机制和加密算法理解
  7. 美团信用卡现金分期怎么还?
  8. java中properties作用,Java中Properties的使用详解
  9. wordpress 字符串翻译日期_WordPress强大搜索功能如何实现?安装Ivory Search插件
  10. 2017-3-17 SQL server 数据库 视图,事务,备份还原,分离附加
  11. adb shell操作文件
  12. 给本地Git配置账号信息
  13. 逆天闪存设备 居然能将数据保存至少百年
  14. 火灾烟雾检测数据集和yolov4-yolov5检测模型
  15. 2021全国大学生电子设计大赛题目汇总
  16. 新闻发布系统 新闻管理系统 可注册、登录
  17. 2022年全国图书参考联盟读秀5.0/4.0/3.0/2.0/1.0书库网盘数据索引在线搜索查询系统搭建教程,可以实现ISBN/SS号/书封面链接/书名/作者/出版社…等信息一键搜索查询
  18. 在开发版上用C语言写实心圆,MFC利用CPen与CBrush绘制实心圆
  19. 我的第一篇博客——开篇
  20. 屏幕刷新频率怎么更改?

热门文章

  1. 实时操作系统和分时操作系统的区别
  2. java注释【单行注释,多行注释,文档注释】
  3. 华为P10手机有计算机功能吗,手机教程知识:华为P10支持NFC功能吗 华为P10新功能介绍...
  4. 找出N个元素的数组中最大的K个数
  5. java设计校园网登录界面_java毕业设计_springboot框架的校园网的大学生社交网站...
  6. example如何使用?
  7. Windows资源管理器占用CPU过高
  8. ant 中文手册--下载安装
  9. 区块链技术再出新玩法——解决跨境支付问题
  10. ADC采样时间、采样周期、采样频率计算方法