2013-05-06 86 views
0

如何使用PDO删除插入的最后一行(这是在另一个类中完成的)?如何删除使用PDO插入到MySQL表中的最后一条记录?

我有这个,但我不知道还有什么我应该用它做:

$pdo = new PDO("mysql:host=$db_host;dbname=$db_name;", $db_user, $db_password); 
$stmt = $pdo->prepare('DELETE FROM Resources'); 
$stmt->execute(); 
+0

数据库中没有第一行或最后一行。您需要指定某一行 – 2013-05-06 18:54:26

+0

我的意思是我在数据库中创建的最后一条记录 – mishmomo 2013-05-06 18:55:35

+0

另外,请问为什么要在插入后立即删除? – 2013-05-06 18:55:59

回答

3

插入新记录后,你会得到这样的ID:

$insert = $pdo->prepare("INSERT INTO Resources (data) VALUES (:data)"); 
$insert->execute(array(':data' => $data)); 
$lastid = $pdo->lastInsertID(); 

// delete last entry 
$delete = $pdo->prepare("DELETE FROM Resources WHERE id = :id LIMIT 1"); 
$delete->execute(array(':id' => $lastid)); 
+0

这些需要在同一类?我问,因为我有一个撤销按钮,用于删除最后插入的记录。 – mishmomo 2013-05-06 20:02:34

+0

@NojoRu删除最后插入的记录并撤消某些插入操作是两个不同的**事项。它可以是任何类或方法或PHP脚本,只要它可以具有插入的id即可。 – 2013-05-06 20:05:39

+0

@NojoRu:同班同学:不。 – michi 2013-05-06 21:33:28

相关问题