前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MariaDB 的自增字段 AUTO_INCREMENT 字段

MariaDB 的自增字段 AUTO_INCREMENT 字段

原创
作者头像
HoneyMoose
发布2022-04-09 02:51:27
1.3K0
发布2022-04-09 02:51:27
举报
文章被收录于专栏:CWIKIUSCWIKIUS

如果你对自增字段有什么不了解的话,你可以搜索下相关定义。

简单来说就是一个数据表中需要一个主键,但是这个主键可能又没有什么具体的意义,你可以使用 AUTO_INCREMENT 来标识这条记录。

如果你还需要官方的定义,请参考下面的说明:

在 MySQL 中,当主键定义为自增长后,这个主键的值就不再需要用户输入数据了,而由数据库系统根据定义自动赋值。每增加一条记录,主键会自动以相同的步长进行增长。

通过给字段添加 AUTO_INCREMENT 属性来实现主键自增长。语法格式如下:

AUTO_INCREMENT 说明

有下面的一些属性需要进行说明:

  • 默认情况下,AUTO_INCREMENT 的初始值是 1,每新增一条记录,字段值自动加 1。
  • 一个表中只能有一个字段使用 AUTO_INCREMENT 约束,且该字段必须有唯一索引,以避免序号重复(即为主键或主键的一部分)。
  • AUTO_INCREMENT 约束的字段必须具备 NOT NULL 属性。
  • AUTO_INCREMENT 约束的字段只能是整数类型(TINYINT、SMALLINT、INT、BIGINT 等)。
  • AUTO_INCREMENT 约束字段的最大值受该字段的数据类型约束,如果达到上限,AUTO_INCREMENT 就会失效。

一个用例

对 AUTO_INCREMENT 来说下一个值就是当前表格中最大的值 + 1。

如果中间有空的话,也不会返回自动填充。

这个是需要注意的。

如果你将表中的最大值修改为其他一个值的话,那么下一个值就是这个值 + 1。

AUTO_INCREMENT
AUTO_INCREMENT

上面的表格就是这个说明。

我们尝试让一个 id 从 1001 开始,1001 的值是我们手动填充到表中的。

当我插入一个新数据的时候,新插入的数据的值是自动从 1002 开始的。

哪怕我们没有对 AUTO_INCREMENT 进行修改,表也不会将数据填充会丢失的数据。

https://www.ossez.com/t/mariadb-auto-increment/13916

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • AUTO_INCREMENT 说明
  • 一个用例
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档