我是 PDO 对象的新手,找不到对我有帮助的文档。假设我有一个简单的代码来删除一行:
$count = $dbh->exec("DELETE FROM fruit WHERE colour = 'red'");
这将返回受影响的行,但我将如何使用准备好的语句呢?可以使用 $dbh->prepare
AND $dbh->exec
或 query !?
最佳答案
它应该与任何其他语句相同:
$stmt = $dbh->prepare("DELETE FROM fruit WHERE colour = ?");
$stmt->execute(array('red'));
$count = $stmt->rowCount();
PDO Statement rowCount()应该是你想要做的。
编辑
通过添加返回行数的 ->rowCount()
修复。 ->execute
在语句中将返回一个 bool
,true
或 false
无论查询是否出错。当然,所有这些信息都可以在 PDO Statement Manual 上轻松获得。
关于PHP/PDO : use simple prepared statement with query return/affected rows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3659898/