mysql如何让自增id从1开始设置方法

哎哟,MySQL真的很讲究将ID设置为从1 开始自动递增。
我告诉你,别搞错了。

对于已经建好的表:
1 为ID列添加索引:你看看你的表中的ID列有没有索引?否则,您需要先添加一个。
如果没有索引,这将无法工作,并且自动增量将会混乱。
就这个SQL语句:ALTER TABLE 表名 ADD INDEX id;。
上次做完项目的时候,这个表叫users。
我发现这个ID没有被索引,所以我加了一句,哦,立刻就正常了。

2 设置自增属性:既然索引已经可用,下一步就是将ID列设置为自增。
这个SQL代码是:ALTER TABLE表名MODIFY id INT AUTO_INCRMENT;。
请注意,此处假设 ID 列的类型为 INT。
如果使用BIGINT或其他,则需要修改SQL中的INT。
那时我换了桌子。
本来是BIGINT,我改成INT了。
没有报错,数据完全错误。
惨痛的教训。

3 重置自增值:如果表中已有数据,且自增值不是从1 开始,则需要重置自增值。
此SQL:ALTER TABLE 表名AUTO_INCRMENT = 1 ;。
例如,你的表中的最大ID是1 00,但你希望它从1 开始,只需运行这个SQL即可。
我上次有一个表,ID从1 00开始。
新用户看起来很尴尬,所以我重置了它,它立即回到1
对于尚未创建的表:
1 直接创建时设置自增ID:如果新建表,可以直接将ID列设置为主键并启用自增。
这个SQL:CREATE TABLE 表名(id INT PRIMARY KEY AUTO_INCRMENT);。
这样ID列自动从1 开始,非常方便。
当我通常创建一个新表时,我喜欢这样做,只需一行代码。

说实话,不难,但是很容易忘记。
尤其是对于年长的观察者来说,更应该一步步进行,不能跳过。
你记住索引必须存在,必须设置自动增量,如果数据很多则必须重置。
新建表很简单,创建时添加参数即可。
嗯,就是这样,别误会我的意思。

SQL中如何设置表的自增主键和初始值

MySQL:AUTO_INCRMENT、ALTER TABLE调整; PostgreSQL:序列、ALTER SEQUENCE 调整。
这是一个陷阱。
不要认为自动增长的 ID 会自动继续。
并发较高时使用分布式ID。