ホームページ >データベース >mysql チュートリアル >MySQL でのデータベース トランザクション処理スキル
MySQL は、人気のあるリレーショナル データベース管理システムです。中でもトランザクション処理はデータベース運用に欠かせない部分です。トランザクション処理は、複数のデータベース操作をまとめて 1 つの単位として実行するプロセスです。トランザクション処理中に、いずれかの操作でエラーが発生した場合、トランザクション全体がロールバックされます。
この記事では、MySQL におけるデータベース トランザクション処理手法について説明します。
MySQL では、次のコマンドを使用してトランザクションを開く必要があります:
START TRANSACTION;
このコマンドを使用すると、新しいトランザクションが開きますそしてアクティブ状態になります。このコマンドが実行されると、それ以降のすべての MySQL クエリはトランザクション内で実行されたとみなされます。
トランザクション処理が正常に完了し、すべての SQL ステートメントが正常に実行されたら、次のコマンドを使用してトランザクションを送信する必要があります。
COMMIT;これを使用します。 このコマンドは現在のトランザクションをコミットし、変更された内容をデータベースに永続的に保存します。トランザクションがコミットされると、MySQL はトランザクションをアクティブに維持していたすべてのデータベース接続を閉じます。
ROLLBACK;これを使用します。現在のトランザクションを元に戻し、すべての変更を元に戻すコマンド。トランザクションをロールバックした後、MySQL はすべてのデータベース接続を閉じ、トランザクション ステータスを「ロールバック」に設定します。
START TRANSACTION; DELETE FROM orders WHERE product_name = 'foo'; DELETE FROM order_details WHERE product_name = 'foo'; COMMIT;この例では、すべての操作は、トランザクションを実行して、変更が正しく永続化またはロールバックされることを確認します。
SET AUTOCOMMIT=0;このコマンドを使用した後は、トランザクションが明示的にコミットまたはロールバックされるまで、すべての SQL クエリはトランザクション内に残ります。自動コミットを再度有効にするには、次のコマンドを使用します。
SET AUTOCOMMIT=1;
SHOW ENGINE INNODB STATUS;
このコマンドを使用すると、現在のトランザクションの詳細が表示されます。アクティブなトランザクション (コミットされていないトランザクションやロックされたオブジェクトを含む)。このコマンドは、デッドロックやその他の問題を引き起こす可能性のあるトランザクションを特定するのに役立ちます。
実際のアプリケーションでは、MySQL を使用してトランザクション処理を処理するスキルが非常に重要です。この記事で説明する手法は、エラー率を削減し、プログラムの信頼性を高め、システムのパフォーマンスを向上させるのに役立ちます。 MySQL トランザクション処理技術を正しく使用することで、データのセキュリティを確保し、データベース アプリケーションの信頼性を向上させることができます。
以上がMySQL でのデータベース トランザクション処理スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。