PHP/PDO : use simple prepared statement with query return/affected rows?

标签 php mysql pdo prepared-statement

我是 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 在语句中将返回一个 booltruefalse 无论查询是否出错。当然,所有这些信息都可以在 PDO Statement Manual 上轻松获得。

关于PHP/PDO : use simple prepared statement with query return/affected rows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3659898/

相关文章:

php pdo 查询不起作用

PHP静态方法递归

php - mysqli 自动递增生成的主 ID

php - 更新连接功能在 php 中无法正常工作

mysql - 创建外键时出错

基于 MySQL 触发器的审计日志记录与比较

php - "filter input, escape output"对 PDO 是否仍然有效

php - 使用 last id PDO PHP MySQL 将数据插入到两个表中

php - JSONKit - 将 JSON 字符串解析为 PHP 到 MYSQL 数据库

php - laravel 使用数字键迭代 @foreach