繁体   English   中英

使用PDO获取插入和更新ID

[英]Getting the insert and update ID with PDO

我试图使用PDO获取mysql_insert_id 到目前为止,我还没有找到一个适用于插入和更新的好例子。 有没有人有一个完整的代码作为例子?

如果你需要 $pdo->lastInsertId()来返回刚更新的行的id(如果我需要它,我会认真重新考虑我的设计,但是嘿......可能是真正的需要),做这样的更新:

 UPDATE tablename  SET some_column='somevalue',id=LAST_INSERT_ID(id);

PDO :: lastInsertId 返回最后插入的行或序列值的ID

<?php 
try { 
    $dbh = new PDO('mysql:host=localhost;dbname=test', 'usrname', 'passwrd'); 

    $stmt = $dbh->prepare("INSERT INTO test (name, email) VALUES(?,?);"); 

    try { 
        $dbh->beginTransaction(); 
        $stmt->execute( array('user', 'user@example.com')); 
        $dbh->commit(); 
        print $dbh->lastInsertId(); 
    } catch(PDOExecption $e) { 
        $dbh->rollback(); 
        print "Error!: " . $e->getMessage() . "</br>"; 
    } 
} catch(PDOExecption $e) { 
    print "Error!: " . $e->getMessage() . "</br>"; 
} 
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM