当前位置: 首页 > 知识库问答 >
问题:

如何使ID“主键”字段设置编号基于行而不是AUTO_INCREMENT

夹谷志
2023-03-14

现在,我把我的ID字段作为MySQL中的主键,并启用了AUTO_INCREMENT。我想知道的是如何使ID表示表中该行的编号,而不是在插入时给它一个数字,然后坚持使用该数字?因为当我删除一些东西时,那个数字就不会被使用。我希望它们根据行数都是唯一的。

共有2个答案

谭玄天
2023-03-14

创建表时,不要添加AUTO_INCREMENT关键字

对于现有表,使用

ALTER TABLE <Table_Name> MODIFY COLUMN <Column_Name> INTEGER;

以删除AUTO_INCREMENT,主键将被保留。

孟海
2023-03-14

始终具有主键。基本自动递增整数或多个字段的组合键。它可以帮助您的DB完成它的工作,并在您想要建立关系时派上用场。添加一个名为<code>RowIndex<code>的字段,并在删除任何内容时对其重新编号。

 类似资料:
  • 现在,我将ID字段作为MySQL中的主键,并将AUTO_INCREMENT打开。我想知道的是,如何使ID代表表中该行的编号,而不是在插入时给它一个编号,然后坚持使用该编号?因为当我删除一些东西时,那个号码就不用了。我希望它们都是唯一的基于行计数。

  • 问题内容: 假设我在User结构中有一个密码字段。 我的客户通过一起发布用户名和密码来注册用户。因此,如果我将JSON解码为上述struct,它将忽略密码。可以预料的 但是我想知道是否只有编组时才能忽略字段。我检查了官方文档页面,但找不到任何东西。 https://golang.org/pkg/encoding/json/ 我可以在结构中添加一个额外的字段,但我首先需要知道是否可以使用JSON l

  • 问题内容: 我在SQLite中有一些表,我试图弄清楚如何重设自动递增的数据库字段。 我读到DELETE FROM tablename应该删除所有内容,并将auto-incrementment字段重置为0,但是这样做时,它只会删除数据。插入新记录后,自动增量将从删除前的中断处开始提取。 我的ident字段属性如下: 栏位类型:integer 字段标志:PRIMARY KEY,AUTOINCREMEN

  • 在JPA(Hibernate)中,当我们自动生成ID字段时,假设用户不知道这个密钥。因此,在获取实体时,用户将基于ID以外的某些字段进行查询。在这种情况下,我们如何获取实体(因为无法使用)。 我知道我们可以稍后使用查询并过滤结果。但是,有没有更直接的方法(因为这是我所理解的一个非常普遍的问题)。

  • 本文向大家介绍如何在MySQL中创建以auto_increment开头于1000的INT字段(不是主键)?,包括了如何在MySQL中创建以auto_increment开头于1000的INT字段(不是主键)?的使用技巧和注意事项,需要的朋友参考一下 为此,您需要将AUTO_INCREMENT设置为1000- 让我们首先创建一个表- 以下是将值设置为1000的自动增量的查询- 使用插入命令在表中插入一

  • 我想检索页面中post_id(post1)下的所有评论: 表注释 桌柱 模型comment.php 模型post.php 控制器postsController。php 当我访问//localhost/posts/post1/时,不会显示任何相关注释。SQL的运行方式如下: 如何删除='1"以检索相应的注释?