当前位置: 首页 > news >正文

mysql序列号重置,当我们更改小于当前序列号的AUTO_INCREMENT值时,MySQL将返回什么?...

当我们在MySQL列上使用AUTO_INCREMENT时,序列号总是从默认值1或我们指定的值开始以升序递增。

因此,MySQL不允许将AUTO_INCREMENT值更改为小于当前序列号的值。通过以下示例可以理解-

示例

在此示例中,假设我们有一个名为“ emp1”的表,并在创建表时将AUTO_INCREMENT VALUE指定为100。因此,在表中插入值之后,该序列将从100开始,如以下查询的输出所示-mysql> Select * from emp1;

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

| id | NAME     |

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

| 100 | Sohan   |

| 101 | Harshit |

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

2 rows in set (0.00 sec)

现在,当我们尝试通过ALTER TABLE查询将AUTO_INCREMENT值更改为90时,MySQL不会返回错误和警告,因为查询还可以,但是当我们在表中插入新值时,MySQL会将指定的AUTO_INCREMENT值与当前序列号进行比较。由于指定的AUTO_INCREMENT值(90)小于当前序列号(101),MySQL开始从102开始累积新值,可以从以下查询中观察到-mysql> ALTER TABLE EMP1 AUTO_INCREMENT = 90;

Records: 2 Duplicates: 0 Warnings: 0

mysql> Insert into emp1(name) values('Aryan');

mysql> Select * from emp1;

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

| id  | NAME    |

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

| 100 | Sohan   |

| 101 | Harshit |

| 102 | Aryan   |

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

3 rows in set (0.00 sec)

相反,如果我们尝试将AUTO_INCREMENT更改为高于当前序列号的值,则MySQL将开始从指定值开始累积新值。

为了在表'emp1'中更加清楚,我们将AUTO_INCREMENT值更改为108,高于当前序列号,因此MySQL从指定的AUTO_INCREMENT值(即从108开始)开始累积新插入的值。mysql> ALTER TABLE EMP1 AUTO_INCREMENT = 108;

Records: 3 Duplicates: 0 Warnings: 0

mysql> Insert into emp1(name) values('Daksh');

mysql> Insert into emp1(name) values('Yashraj');

mysql> Select * from emp1;

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

| id  | NAME    |

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

| 100 | Sohan   |

| 101 | Harshit |

| 102 | Aryan   |

| 108 | Daksh   |

| 109 | Yashraj |

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

5 rows in set (0.00 sec)

相关文章:

  • mysql聚合函数详解,MySQL常用聚合函数详解
  • php 年月日自动更新,php生成年月日下载列表的方法
  • java 去掉字符串中的注释,Python删除Java源文件中全部注释的实现方法
  • 如何修改oracle储存路径,oracle中如何修改表空间的数据文件路径
  • php读取excel怎么读取sheet2,PHP读取Excel 之 Spreadsheet_Excel_Reader
  • oracle新建用户和实例,Oracle新建用户、角色,授权,建表空间实例(1/2)
  • oracle10gsys默认,Oracle数据库sys和system用户的默认密码及如何修改密码
  • oracle 06502 解决,【故障解决】ORA-06502错误解决
  • oracle杀死j2ee,J2EE下的oracle数据库备份方法
  • linux将一个进程变成守护进程,Linux 守护进程原理
  • linux删除目录的命令rm,Linux 命令 - rm: 删除文件和目录
  • 嵌入式linux 共享内存,linux 共享内存
  • linux salt命令 -e,salt-key命令
  • linux 编译apm,linux内核编译(六)
  • linux 网络驱动程序 网卡接收数据,怎么知道是不是需要的,linux网络学习笔记--网卡驱动数据接收...
  • @jsonView过滤属性
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Centos6.8 使用rpm安装mysql5.7
  • const let
  • Create React App 使用
  • css的样式优先级
  • ES6系列(二)变量的解构赋值
  • JAVA SE 6 GC调优笔记
  • Nacos系列:Nacos的Java SDK使用
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • SegmentFault 2015 Top Rank
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • sublime配置文件
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 技术发展面试
  • 简析gRPC client 连接管理
  • 力扣(LeetCode)56
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • - 转 Ext2.0 form使用实例
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • #14vue3生成表单并跳转到外部地址的方式
  • #162 (Div. 2)
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (AngularJS)Angular 控制器之间通信初探
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (八)Spring源码解析:Spring MVC
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (入门自用)--C++--抽象类--多态原理--虚表--1020
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (转载)Google Chrome调试JS