我的数据库中共有3个表,分别是village
、branch
、country
。
首先,我使用以下查询从表单插入村庄:
$intTalukaId = $_POST['selCenter'];
$strVillageName = $_POST['villagename'];
$sql = "INSERT INTO Villages VALUES( '','$strVillageName','$intTalukaId')";
成功插入村庄。
然后我想要最新的插入村庄 ID,该 ID 将在下一个查询中使用,其中我从村庄中选择 max(village_id)
。它返回最大值,但在数据库中它同时插入两个值。
例如:村庄表village_id
中的当前值为30,执行此查询后,它会显示具有相同记录的31和32。
谁能帮忙解释为什么会发生这种情况吗?
最佳答案
如果您使用 pdo,请使用 [PDO::lastInsertId.][1]
如果您使用的是 mysqli,请使用 [mysqli::$insert_id][2]。
如果你正在使用mysql,就停止使用它。
祝您申请顺利:)
关于php - MySql插入查询返回2条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17618142/