我的编程空间,编程开发者的网络收藏夹
学习永远不晚

详细聊聊MySQL中auto_increment有什么作用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

详细聊聊MySQL中auto_increment有什么作用

问题来源

很多时候,mysql语句中会出现【auto_increment】这个词汇,大多数时候,表都是自动生成的,刚开始学习MySQL数据库时会学习到,后来,渐渐地可能会忘记,那么这个语句的作用到底是什么意思?下面,来汇总一下:

解释

auto_increment是用于主键自动增长的,从1开始增长,当你把第一条记录删除时,再插入第二条数据时,主键值是2,不是1。

例如:

create table test
(
id int(10) not null auto_increment, – 表示自增列
name varchar(20) not null,
primary key(id)
)

auto_increment = 1; – 表示自增起始大小-- 这样就可以创建一个表test,id为自增列

– 执行语句 insert into test (name) values (‘名字’);

– 就可以插入一行数据为: 1 ‘名字’

详细聊聊MySQL中auto_increment有什么作用

注意事项

在使用AUTO_INCREMENT时,应注意以下几点:

1、AUTO_INCREMENT是数据列的一种属性,只适用于整数类型数据列。

2、设置AUTO_INCREMENT属性的数据列应该是一个正数序列,所以应该把该数据列声明为UNSIGNED,这样序列的编号个可增加一倍。

3、AUTO_INCREMENT数据列必须有唯一索引,以避免序号重复(即是主键或者主键的一部分)。
AUTO_INCREMENT数据列必须具备NOT NULL属性。

4、AUTO_INCREMENT数据列序号的最大值受该列的数据类型约束,如TINYINT数据列的最大编号是127,如加上UNSIGNED,则最大为255。一旦达到上限,AUTO_INCREMENT就会失效。

5、当进行全表删除时,MySQL AUTO_INCREMENT会从1重新开始编号。

这是因为进行全表操作时,MySQL(和php搭配之最佳组合)实际是做了这样的优化操作:先把数据表里的所有数据和索引删除,然后重建数据表。

如果想删除所有的数据行又想保留序列编号信息,可这样用一个带where的delete命令以抑制MySQL(和PHP搭配之最佳组合)的优化:delete from table_name where 1;

可用last_insert_id()获取刚刚自增过的值。

说明:部分内容来自搜索整理,目的是为了记录总结,学习使用~

总结

到此这篇关于MySQL中auto_increment有什么作用的文章就介绍到这了,更多相关MySQL中auto_increment作用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

详细聊聊MySQL中auto_increment有什么作用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

详细聊聊MySQL中auto_increment有什么作用

目录问题来源解释注意事项总结问题来源很多时候,mysql语句中会出现【auto_increment】这个词汇,大多数时候,表都是自动生成的,刚开始学习MySQL数据库时会学习到,后来,渐渐地可能会忘记,那么这个语句的作用到底是什么意思?下
2022-06-29

详细聊一聊为什么Python没有main函数

相信很多初学python的人看代码的时候都会先找一下main()方法,从main往下看,但事实上python中是没有你理解中的“main()”方法的,下面这篇文章主要给大家介绍了关于为什么Python没有main函数的相关资料,需要的朋友可以参考下
2023-03-19

聊聊vue3中echarts用什么形式封装最好?(代码详解)

项目中经常用到echarts,不做封装直接拿来使用也行,但不可避免要写很多重复的配置代码,封装稍不注意又会过度封装,丢失了扩展性和可读性。始终没有找到一个好的实践,偶然看到一篇文章,给了灵感。
2023-05-14

mysql中的analyze有什么作用

mysql analyze 命令更新表的统计信息以优化查询性能,包括统计更新、查询优化器改进和空间释放。工作原理包括扫描表数据计算行数、distinct 值数和值分布,从而生成更优化的查询计划。定期对经常查询的表执行 analyze 并仅分
mysql中的analyze有什么作用
2024-05-01

mysql中的validate_password有什么作用

MySQL中的validate_password是一个插件,用于强制设置和验证密码复杂性规则。通过启用validate_password插件,可以强制用户使用符合一定复杂性规则的密码,例如长度、包含数字、小写字母、大写字母和特殊字符等。v
mysql中的validate_password有什么作用
2024-05-14

mysql中set类型有什么作用

这篇文章主要介绍“mysql中set类型有什么作用”,在日常操作中,相信很多人在mysql中set类型有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql中set类型有什么作用”的疑惑有所帮助!
2023-06-20

mysql中distinct函数有什么作用

在MySQL中,DISTINCT 关键字用于从结果集中返回唯一(不同)的值。当你使用 SELECT 语句从一个或多个列中查询数据时,可能会得到重复的行记录。如果你希望每个记录都是独一无二的,即每个记录在结果集中只出现一次,那么就可以使用 D
mysql中distinct函数有什么作用
2024-05-23

mysql中replace函数有什么作用

这篇文章主要讲解了“mysql中replace函数有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql中replace函数有什么作用”吧!说明1、可以替换字符串中的内容,直接替
2023-06-20

MySQL中的外键是什么、有什么作用

MySQL外键的作用: 保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。使两张表形成关联,外键只能引用外表中列的值! 我们来建两个表 CREATE TABLE `example1` ( `stu_id` int(11) NOT NULL DE
MySQL中的外键是什么、有什么作用
2014-09-04

mysql中start transaction语句有什么作用

在MySQL中,START TRANSACTION语句用于启动一个事务。事务是一系列数据库操作,要么全部成功执行,要么全部回滚,保证数据的一致性和完整性。通过使用START TRANSACTION语句,可以将一系列操作放在同一个事务中,确保
mysql中start transaction语句有什么作用
2024-05-22

mysql中的tonumber函数有什么作用

在MySQL中,并没有内置的tonumber函数。通常,MySQL中的数据类型会根据存储的数据自动转换为适当的类型,例如将字符串转换为数字类型。如果您需要将字符串转换为数字类型,可以使用CAST函数或者CONVERT函数来实现。例如:S
mysql中的tonumber函数有什么作用
2024-05-13

编程热搜

目录