Mysql设置主键自增,删除数据后,主键id依然从删除位置增加 |
您所在的位置:网站首页 › pubgtool删除后 › Mysql设置主键自增,删除数据后,主键id依然从删除位置增加 |
Mysql数据库添加主键后,删除数据,数据依然排序显示
提示:平常操作数据库时,我们对主键是不需要进行这个操作的,但是测试数据时,有时就是需要这样的操作也是存在的: tips: 文章较长,关键操作:删除操作后,alter table 表名 AUTO_INCREMENT=N; (N代表主键从什么位置开始排序) ps:本文的编写是为了,记录自己在学习Mysql数据库时的一些事项 # 一、Mysql数据库的主键问题原因:Mysql数据库的主键是支持自增的 ,此时我们不断向数据库中插入数据,主键的值便会不断的自增,此时我们删除某一个数据,并不会扰乱主键的递增 二、Mysql主键案例演示 1.给表格添加主键自增这里我们有一张studentinfo表,添加stuno为主键,代码如下: 范式:alter table 表名 change 列名 列名 数据类型 primary key auto_increment; alter table studentinfo change stuno stuno int primary key auto_increment; 2.添加数据我们随便添加几个数据, 因为我们设置了主键自增,那么我们默认插入的数据 stuno是会自己递增,我们不用管 会发现后面添加的三个数据,stuno是自己按照5007-5009排序的 代码如下: insert into studentinfo(stusex,stuname) values(0,"小二子"); insert into studentinfo(stusex,stuname) values(1,"小李子"); insert into studentinfo(stusex,stuname) values(1,"杨二"); 3.删除数据下面我们删除数据后查看效果 代码如下: delete from studentinfo where stuno=5007; delete from studentinfo where stuno=5008; delete from studentinfo where stuno=5009; 4.再次添加数据这里我们继续添加数据,便会发现数据,并不会按照5007继续排序 Jack的stuno是5010,并不是从5007开始排序 代码如下: insert into studentinfo(stusex,stuname) values(0,"Jack"); 5.通过下面的代码修改每次我们每次进行删除数据操作后,都需要在终端执行一次下方的代码语句 代码如下: 范式:alter table 表名 AUTO_INCREMENT=N; delete from studentinfo where stuno =5010; alter table studentinfo AUTO_INCREMENT=5006; 6.增加数据查看执行代码后,添加数据,查看结果 此时的Jack的stuno便是我们想要的5007 代码如下: insert into studentinfo(stusex,stuname) values(0,"Jack"); 总结提示: ①:需要执行的语句为:范式:alter table 表名 AUTO_INCREMENT=N; ( ‘N’:代表着主键需要从那个数据开始排序) ②:代码中的大小写 (貌似并不区分,我测试了几个大小写情况,添加数据都正常) ③:每次进行删除操作后,如果想按顺序排序,那么都必须要执行一次语句 ④:这段代码,执行在删除操作之后 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |