Advertisement

Mysql学习篇 —— Mysql设置自增长序列的初始值

阅读量:

注意n只能大于已有的auto_increment的整数值,小于的值无效.

使用'display'命令查看表名为'table_name'的数据表时, 可以看到auto_increment这一列是有值的.

步进值没法改变.只能通过下面提到last_inset_id()函数变通使用

Mysql可以通过AUTO_INCREMENT属性实现主键自增功能,默认起始值为1;若希望将其初始值设定为1000,则较为繁琐的方式是先添加一条测试记录并将其主键字段设置为999随后删除该条新增记录

代码如下 复制代码

| insert into test(pk) values(999);
delete from test where pk = 999; |

更好的方法是使用alter的方法来直接修改,例如:

代码如下 复制代码
alter table test AUTO_INCREMENT = 1000;

例子

1、不控制主键的起点

代码如下 复制代码

创建表 emb_t_dictBusType 包含字段 emb_c_busTypeID(自增整型)、emb_c_busTypeEnName(最大255个字符的英文字段)以及 emb_c_busTypeZhName(最大255个字符的中文字段)。其中 primary key 是 emb_c_busTypeID

2、控制主键的起点

代码如下 复制代码

创建表 bus type dictionary for buses

自增主键归零

方法一:

如果不再需要之前的记录数据,则可以直接清除现有数据表中的全部数据,并重新设置自增字段为从1开始计数。

truncate table 表名

方法二:

dbcc checkident ('table_name', reseed, new_reseed_value) 在当前状态下对 table_name 表应用了 reseed 值为 new_reseed_value 的操作。
若在创建表后未插入任何行,则在执行 dbcc checkident 操作后首次插入的记录将使用 new_reseed_value 作为其标识。
否则,在随后的插入操作中使用的标识将是 new_reseed_value 加一。
当新重置值小于标识列的最大允许值时,在之后引用该表可能会触发编号错误信息 2627。
[www.111cn.net]

该方法无需清除现有数据,并具有较高的灵活性。它不仅允许将自增计重置为零(即清除现有数值),同时也适用于在删除大量连续记录后重新设置自增计并插入新数据;或者在删除大量连续记录后重新设置自增计并插入新数据,并从一个新的基准值开始计算数值序列。

代码如下 复制代码

自动生成删除操作并执行删除操作

获取自增主键【4种方法】

在应用开发过程中,在MySQL数据库中进行一次INSERT操作后,请您检索并取得该次插入记录对应的自增主键值。本文旨在介绍Java环境下实现记录自增机制的各种方法及其实现细节。

通过JDBC2.0提供的insertRow()方式

通过JDBC3.0提供的getGeneratedKeys()方式

通过SQL select LAST_INSERT_ID()函数

通过SQL @@IDENTITY变量自我介绍:我于2013年毕业于上海交通大学,并曾在小公司工作过一段时间;后曾在各大公司如华为、OPPO等有过实习或工作经历;自2018年起,在阿里巴巴集团工作至今

大多数Java工程师普遍认识到,在提升专业水平方面通常有两种路径可循:一种是通过自主学习逐步积累经验成长起来;另一种是选择系统化的培训课程进行指导。然而面对高昂的培训机构费用(通常需要数千元),这对许多希望提升自身能力的人来说确实存在不小的经济压力。缺乏组织的学习方式导致效率低下且耗时长,并容易被技术瓶颈限制无法实现更大突破!

经过精心筛选和整理,《2024年Java开发全套学习资料》应运而生。其最初的出发点也很单纯——旨在帮助那些希望自主提升但不知从何入手的学习者们,并且也期望为他们减轻学习上的负担。

img

针对小白朋友的基础阶段的学习需求设计了丰富的零基础教学材料;同时为拥有3年以上工作经验的专业技术人员提供了深入学习和提升的技术路线;课程内容覆盖了超过95%的核心Java知识点,并且系统性地构建了一个完整的知识体系。

因为文件较大,在这里仅用于展示目录结构,并非全部内容;每个目录节点中均包含大厂面经、学习笔记、源码讲义、实战项目以及讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

考察完美团、字节跳动以及腾讯等多家公司近期可能会考察的知识点

在开头部分,我记得自己整整背下了100道题目左右(注:原句应为"100道"而非"1千多"),觉得有一定帮助呢!查阅后发现这些问题大部分都能在自己的笔记中找到答案。所以今天就整理并分享一下《互联网工程师必备的面试1k题》

无论是我在其中提供的互联网面试1000题, 还是后面提及的算法与数据结构. 设计模式以及其他相关的Java学习笔记等均可分享给各位朋友.

最新“美团+字节+腾讯”一二三面问题,挑战一下你能走到哪一面?

互联网工程师必备的面试1000题

通过对比分析这三家的技术特点, 不谋而合的是算法与数据结构是基础且必不可少的知识储备. 因此我推荐大家深入研究一下这本书——《程序员代码面试指南 IT名企算法与数据结构题目最优解》, 这本书内汇集了超过200道真实出现过的经典代码面试题

最新“美团+字节+腾讯”一二三面问题,挑战一下你能走到哪一面?

《IT巨头公司面试题解析, 深入学习开发技术的课程, 完整的学习视频课程, 实际项目案例分析与代码实践指导》通过点击传送门即可访问} 350)

《互联网大厂面试真题分析与解答, 深入探讨进阶开发核心, 全套系统讲解视频, 实战项目源代码解析》点击传送门即可访问!

全部评论 (0)

还没有任何评论哟~