php - MySql插入查询返回2条记录

标签 php mysql mysqli

我的数据库中共有3个表,分别是villagebranchcountry

首先,我使用以下查询从表单插入村庄:

$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/

相关文章:

PHP/HTML 动态页面/搜索

php - 如何在php中通过SSL连接Mysql数据库?

mysql - 避免使用子选择进行选择

mysql - 将数据从一个表复制到另一个表时出现错误,sqlite

php - 每次我编辑一行时,它都会创建另一行

php - 选择一列的所有值,按另一列排序

php - SQL 更新查询不合作

php - 星期几到天数(星期一 = 1,星期二 = 2)

mysql - sql : map data provided in query

php - 如何允许使用 PHP/MySQL 仅更改一次列变量?