nginx – Transaktionen über phpmysql

WBOY
Freigeben: 2016-08-04 09:20:59
Original
1177 Leute haben es durchsucht

Problem: Ich habe festgestellt, dass die Transaktion, wenn sie nicht festgeschrieben oder zurückgesetzt wird, automatisch zurückgesetzt wird, nachdem die HTTP-Anfrage endet

Codebeispiel:

<code>$this->db->begin();

// 这时候user表这条记录就已经被锁住了。。。
$user = \Users::findFirst($id);
$user->name = '写锁啊!';
sleep(15);

$user->save();
return ;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

Aber wenn diese Anfrage endet, kann dieser Datensatz in der Datenbank erneut bearbeitet werden. . .
Ich würde gerne fragen, ob es Nginx, FPM oder Phalcon ist, das automatisch PDO->rollback(); ??????

aufruft

Antwortinhalt:

Problem: Ich habe festgestellt, dass die Transaktion, wenn sie nicht festgeschrieben oder zurückgesetzt wird, automatisch zurückgesetzt wird, nachdem die HTTP-Anfrage endet

Codebeispiel:

<code>$this->db->begin();

// 这时候user表这条记录就已经被锁住了。。。
$user = \Users::findFirst($id);
$user->name = '写锁啊!';
sleep(15);

$user->save();
return ;
</code>
Nach dem Login kopieren
Nach dem Login kopieren

Aber wenn diese Anfrage endet, kann dieser Datensatz in der Datenbank erneut bearbeitet werden. . .
Ich würde gerne fragen, ob es Nginx, FPM oder Phalcon ist, das automatisch PDO->rollback(); ??????

aufruft

Der automatische Übermittlungsparameter AUTOCOMMIT von MySQL ist standardmäßig aktiviert, wenn in der Transaktion ein Commit-Befehl auftritt.
Wenn er über einen MySQL-Treiber in anderen Sprachen ausgeführt wird, nachdem die Anforderung beendet ist oder Timeout), MySQL Der Treiber führt automatisch ein ROLLBACK unverarbeiteter Transaktionen durch.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage