Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 自动编号问题_Php_Mysql - Fatal编程技术网

Php 自动编号问题

Php 自动编号问题,php,mysql,Php,Mysql,我有一个关于自动编号的问题,例如,我在表“products”的字段“Id”中插入了一条记录。我输入了3个字段“id”为1.2和3。当我删除3时,我再次输入更新的字段是4,而不是3。记录的方式是3而不是4这是设计的。已使用过一次的标识符决不能用于其他记录。如果表之间存在关系,则可能会导致数据损坏问题—记录可能突然指向原始表中完全不相关的记录 参考:您可以运行以下查询:altertable tablename AUTO\u INCREMENT=1 这将重置自动递增的起始位置,因此当您再次插入记录时,

我有一个关于自动编号的问题,例如,我在表“products”的字段“Id”中插入了一条记录。我输入了3个字段“id”为1.2和3。当我删除3时,我再次输入更新的字段是4,而不是3。记录的方式是3而不是4这是设计的。已使用过一次的标识符决不能用于其他记录。如果表之间存在关系,则可能会导致数据损坏问题—记录可能突然指向原始表中完全不相关的记录


参考:

您可以运行以下查询:
altertable tablename AUTO\u INCREMENT=1

这将重置自动递增的起始位置,因此当您再次插入记录时,它将采用id 3


你可能会发现这很有用。它非常简短且连贯。

这是一个非常糟糕的主意,原因正如@Pekka所提到的。如果这样做,您将失去所有数据的完整性。@seth.vargo:是的,正如佩卡所指出的,这不是一个好的做法。但这是可能的。我认为提问者理解他/她的数据库模式,出于好奇,可能会问这个问题。作为记录,我不是对你投反对票的人,我将向上投票以抵消,因为你确实回答了他的问题。你应该将自动编号字段视为指针引用,仅此而已。它是唯一的,不应该被复制或覆盖,除非你真的希望它被另一个很少发生的引用指向。您通常会更新外键,而不是主键