In den MySQL-Dokumenten gibt es einen Hinweis zur Verwendung von mysql_affected_rows
nach einem Transaktions-Commit:
Ссылка
Hinweis: Transaktionen
Wenn Sie Transaktionen verwenden, müssen Sie mysql_affected_rows () nach Ihrer INSERT-, UPDATE- oder DELETE-Abfrage aufrufen, nicht nach dem COMMIT.
Es gibt jedoch keinen Hinweis auf PDOStatement::rowCount
doc:
Ссылка
Bedeutet das, dass die Festschreibung die Anzahl der betroffenen Zeilen nach INSERT-, UPDATE- oder DELETE-Abfragen bei Verwendung des Objekts PDO
nicht beeinflusst?
Für jede Abfrage, die ausgeführt wird, wird eine PDOS-Anweisung zurückgegeben. Sie können PDOStatement- & gt; rowCount () jederzeit in Ihrem Code verwenden (während oder nach einer Transaktion und Rollback / Commit spielt keine Rolle). Jedes Objekt kümmert sich um sich selbst.
Der Grund dafür, dass mysql_affected_rows diese Transaktionsnotiz hat, ist, dass sie nur eine einzige mysql-Verbindungsressource kennt. Dies bedeutet, dass beim Abschluss der Transaktion (Commit / Rollback) eine neue Abfrage an die DB gesendet wurde, um zu ändern, welches Ergebnis für die Anzahl der betroffenen Zeilen verarbeitet wird.
Tags und Links php mysql transactions pdo pdostatement