PDOStatement :: rowCount Ergebnis bei Verwendung nach PDO :: commit?

8

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?

    
Ozzy 22.04.2012, 21:06
quelle

1 Antwort

12

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.

    
Nate 26.04.2012, 16:08
quelle