我在 symfony2 中使用 doctrine。但是我使用 native mysql 查询来插入一些数据。现在我想要数据库中最后插入的 id。我的代码如下所示:
$stmt = $this->getDoctrine()->getManager()
->getConnection()
->prepare("INSERT INTO tb_company (v1,v2,v3) values('$v1','$v2','$v3')");
$stmt->execute();
所以要恢复我尝试的最后插入的 id
$stmt->insert_id;
$id=LAST_INSERT_ID(id)
$id=$stmt->getId();
还有很多其他的。他们都不适合我。我是学说的新手。 如何从此处获取最后插入的 ID?我缺少什么?
最佳答案
我想你需要这样的东西:
$conn = $this->getDoctrine()->getConnection();
$stmt = $conn->prepare('INSERT INTO tb_company (v1, v2, v3) values(:v1, :v2, :v3)');
$stmt->bindValue('v1', $v1);
$stmt->bindValue('v2', $v2);
$stmt->bindValue('v3', $v3);
$stmt->execute();
$id = $conn->lastInsertId();
您不能链接 bindValue
或 execute
,因为它们返回一个 boolean
关于php - 从学说和 native mysql 查询中获取最后插入的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20851674/