php用pdo获取insert id这种方法可能有并发问题
程序员文章站
2022-05-18 12:28:39
...
//调用prepare方法准备查询
$stmt = $pdo->prepare($sql);
$stmt = $pdo->prepare($sql);
//传递一个数组为预处理查询中的命名参数绑定值,并执行SQL
$stmt->execute(array(':name' => '王五'));
//获取最后一个插入数据的ID值
echo $pdo->lastInsertId() . '
';
这种方法可能有并发问题吧
回复内容:
//调用prepare方法准备查询
$stmt = $pdo->prepare($sql);
//传递一个数组为预处理查询中的命名参数绑定值,并执行SQL
$stmt->execute(array(':name' => '王五'));
//获取最后一个插入数据的ID值
echo $pdo->lastInsertId() . '
';
这种方法可能有并发问题吧
mysql 的每一个链接都是一个会话
而$pdo->lastInsertId()
是取得当前会话的最后一个插入id
这个$pdo是你私有的,不会取到别人插入的数据。
代码是从上往下一行一行执行的,哪怕你写个循环也不会有错。