我试图使用 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>";
}
?>