我不知道为什么用 mysqli_insert_id() 返回的 id 与我预期的 id 不同。这是我的代码:
$query = "INSERT INTO payments_table (payment_type, payment_number, payment_cost, insertion_date) VALUES ( '$paymentType', '$paymentNumber', '$totalCost', NOW())";
$data = mysqli_query($dbc, $query);
$currentPayerID = mysqli_insert_id($dbc);
//DEBUG
echo 'current payerID is: ' . $currentPayerID;
由于当前有 2 行,我希望它在下次执行后回显“当前 payerID 为 3”。但是,执行此代码后,它会回显以下内容:“current payerID is 21”
几点注意事项:
- 此“payments_table”表有一个名为“payer_id”的列,它是主键并具有 AUTO_INCREMENT 属性。
- 我已经“截断”了这张表(我相信这与清空它是一样的)。
我在整个stackoverflow中进行了搜索,但有些答案不相信我所找到的是可能的。我感谢任何慷慨的帮助!