ホームページ  >  記事  >  データベース  >  トランザクション操作の MySQL ストアド プロシージャの構文エラーを修正する方法

トランザクション操作の MySQL ストアド プロシージャの構文エラーを修正する方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-24 18:54:29534ブラウズ

How to Fix Syntax Errors in MySQL Stored Procedures for Transactional Operations?

MySQL のトランザクション ストアド プロシージャ

MySQL ストアド プロシージャを変更してトランザクションにする場合は、正しい構文に従い、潜在的な問題を処理することが重要です。

ストアド プロシージャでのトランザクションの使用

提供されたストアド プロシージャは、BEGIN ステートメントと COMMIT ステートメントを使用して、本体内でトランザクション操作を実行しようとします。ただし、保存できないエラーが発生しました。

構文エラー

コードを確認すると、2 つの重大な構文エラーが特定されました:

  • 終了ハンドラーにカンマがありません:
    EXIT HANDLER 宣言では、条件 (SQLEXCEPTION、SQLWARNING) を区切るカンマが必要です。構文ドキュメントによると、カンマは必須です。
  • 終了ハンドラーにセミコロンがありません:
    終了ハンドラーの END ステートメントはセミコロンで終了する必要があります。終了ハンドラを含む MySQL のすべてのステートメントにはセミコロン ターミネータが必要です。

修正されたコード

構文エラーを修正するには、コードの修正された部分を次のようにする必要があります。次のようになります:

<code class="sql">DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING
BEGIN
    ROLLBACK;
END;</code>

これらのエラーが修正されると、ストアド プロシージャは意図したとおりに機能し、ストアド プロシージャ内でトランザクション操作を実行できるようになります。

以上がトランザクション操作の MySQL ストアド プロシージャの構文エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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