DB Singleton und affected_rows

deostift

Erfahrenes Mitglied
Hallo zusammen,

ich habe eine Verständnis Frage: in der Dokumentation zu "affected_rows" kann man folgendes herauslesen:

"mysql_affected_rows() liefert die Anzahl betroffener Datensätze durch die letzte INSERT, UPDATE oder DELETE Anfrage an den Server, die mit der angegebenen Verbindungs-Kennung assoziiert wird."

Wenn ich also via Singleton Pattern (static) ein MySQL DB Objekt erzeuge und darüber einen Update durchführe, dann sind Rückgaben von affected_rows ausschließlich "meiner" Abfrage zugeordnet oder? Oder teilen sich mehrere Frontend-User bei einem static DB Object die selbe Verbindungskennung?

Wäre nett, wenn mich jemand hierzu aufklären könnte. Danke :)
 
Hi, egal, ob du ein Singleton verwendest, oder nicht, die Verbindungskennung ist immer nur der aktuellen Anfrage an den Webserver zugeordnet, d.h. auch wenn mehrere Benutzer gleichzitig das Script aufrufen, arbeitet jeder mit einer eigenen Verbindungskennung, die nur für ihn gilt.
 
Erstmal vielen Dank!

Um das Thema abschließend zu vertiefen ;) - sind folgende Annahmen richtig?

>> Wenn das PHP Script via Apache interpretiert wird, startet der Apache pro Request auf ein Script einen eigenen Interpreter Thread

>> Wenn das PHP Script via Shell aufgerufen wird, erzeugt das OS einen eigenen PHP Prozess

>> Egal ob "PHP Threads" im Apache oder PHP Prozesse im OS, alle benutzen getrennte DB Connections

Sind diese Aussagen richtig :) ? Wenn nicht, bitte korrigiert mich. Das sind Fragen, über die ich oft nachgedacht habe aber nie eine valide Antwort gefunden habe :(

Danke nochmals :)
 
Zurück