ホームページ  >  記事  >  バックエンド開発  >  PHPにおけるトランザクションとは何を意味しますか

PHPにおけるトランザクションとは何を意味しますか

WBOY
WBOYオリジナル
2022-03-23 19:07:382872ブラウズ

PHP では、トランザクションはアトミックな SQL クエリのセット、または独立した作業単位です。トランザクションは、PHP がデータベースを操作するための論理的な作業単位です。データベースに対するすべての変更は実行されるか、または実行されます。 ;トランザクションには、原子性、一貫性、分離性、耐久性という 4 つの特性があります。

PHPにおけるトランザクションとは何を意味しますか

この記事の動作環境: Windows 10 システム、PHP バージョン 7.1、Dell G3 コンピューター。

php におけるトランザクションの意味

トランザクションは、アトミック SQL クエリのセット、または独立した作業単位です。

トランザクションはアプリケーションにおける厳密な一連の操作であり、すべての操作が正常に完了する必要があります。完了しないと、各操作で行われたすべての変更が元に戻されます。つまり、トランザクションはアトミックであり、トランザクション内の一連の操作はすべて成功するか、まったく実行されないかのどちらかです。

トランザクションを終了するには 2 つの方法があります。トランザクション内のすべてのステップが正常に実行されると、トランザクションはコミットされます。いずれかのステップが失敗すると、ロールバック操作が発生し、トランザクションの開始までのすべての操作が取り消されます。

PHP トランザクションの 4 つの主な特徴

アトミック性:

トランザクションは次のとおりです。データベース内の作業の論理単位であり、データベースに対する変更はすべて実行されるか、まったく実行されません。

一貫性:

トランザクションの前後で、データベースの状態はすべての整合性制約を満たしています。

分離:

同時に実行されるトランザクションは分離され、一方が他方に影響を与えることはありません。同時に実行され、同じ機能を実行する 2 つのトランザクションがある場合、トランザクション分離により、システム内の各トランザクションは、そのトランザクションのみがシステムを使用していると認識されます。このプロパティはシリアル化と呼ばれることもあります。トランザクション操作間の混乱を避けるために、同じデータに対するリクエストが同時に 1 つだけになるように、リクエストをシリアル化または逆シリアル化する必要があります。

データベースの分離レベルを設定することにより、さまざまな分離効果を実現できます。

永続性 (耐久性):

トランザクションの完了後、トランザクションによってデータベースに加えられた変更はデータベースに永続的に保存され、ロールバックされません。

推奨学習: 「PHP ビデオ チュートリアル

以上がPHPにおけるトランザクションとは何を意味しますかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。