php - PHP 中的 MySQL 查询给出了明显的错误结果

标签 php mysql phpmyadmin

我正在使用 PHP 和 PHPMyAdmin 创建一个小型个人资料网站。 我给成员(member)一个 ID 号,基于该号是当前数据库中最大的数字,+1

在获得我想要的 PHP 脚本之前,我进行了 25 次测试。

然后我使用 PHPMyAdmin 删除了这 25 个条目。

但是现在,当我的 PHP 代码这样做时:

function getLatestID() {
    $query = "SELECT max(member_id) FROM members";
    $result = @mysql_query($query) or showError("unable to query database for user information");
    if (!($record = mysql_fetch_array($result))) return null;
    return $record[0];
}

我打错号码了。

测试场景:数据库表包含 3 个条目,ID 为 1、2 和 3。

我开始调试 session 并在返回 $record[0] 上放置断点。 我检查了它的内容,而不是最大的 3,而是 28。

如25+3=28,我已经删除的25条...

有人知道是什么原因造成的吗?我该如何解决?

最佳答案

这可能是因为您设置了 auto_increment 并且查询返回最高 ID。当您删除其他记录时,您可能没有重置自动增量计数。

关于php - PHP 中的 MySQL 查询给出了明显的错误结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/646746/

相关文章:

php - 如何通过输入特定月份的数据来限制用户,Yii2中存在大于特定月份的记录

php - 在mysql中导入数据时自动插入列

mysql - 如何在phpMyAdmin中使用自动增量

php - 如何使用 group by 获取每个类别的计数?

php - 使用 SUM(a.id=1) 作为 `ìdentifier` 时的学说错误:预期的学说\ORM\查询\Lexer::T_CLOSE_PARENTHESIS,得到 '='

php - 在 PHP 更新表单中从 MySQL 记录集中选择多个表单元素

java - 如何使用Java为MySQL创建新用户?

python - 使用python进行Nmap扫描并存储在mysql中

mysql - 在 phpmydatabase 中导入表

mysql - 在 PHPMyAdmin 中显示最新的表