在我看来,rowCount()
和exec()
都返回受上一个SQL语句影响的行数。
为什么要把重复的东西放在那里?
答案 0 :(得分:2)
他们没有重复,他们在不同的情况下可以扮演不同的角色。
exec()=>执行sql并返回 受影响的行。
rowCount()=>没有执行任何 语句但返回受影响的行 最后一个sql。
他们以这种方式不同
如果您正在使用execute(),那么rowCount将成为它的角色
$del = $dbh->prepare('DELETE FROM fruit');
$del->execute();
$count = $del->rowCount();
当你使用exec时,不需要rowCount()
$count = $dbh->exec("DELETE FROM fruit WHERE colour = 'red'");
print("Deleted $count rows.\n");