「エラー 1329: データがありません - フェッチ、選択、または処理された行はゼロです」メッセージの削除
返されないストアド プロシージャ内どの値を指定しても、実行後に「エラー 1329: データがありません - フェッチ、選択、または処理された行はゼロです」というエラー メッセージが表示される場合があります。このエラー メッセージは、次の行を追加することで抑制できます:
<code class="sql">DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;</code>
Background:
MySQL では、エラーが発生した場合でも、内部バグによりこの警告が表示されます。扱った。この問題を解決するには、テーブルを含むダミー ステートメントを挿入し、それが成功すると警告がクリアされます。
例:
提供されたストアド プロシージャ内、testing_proc では、ループの終了後に次のステートメントを追加できます:
<code class="sql">SELECT name INTO l_name FROM customer_tbl LIMIT 1;</code>
このステートメントは正常に実行され、エラー メッセージが表示されません。
MySQL 5.5.13 以降では、ダミーステートメントを追加すると、警告が表示されなくなる場合があります。ただし、古いバージョンとの互換性を確保するために、これを含めることをお勧めします。
以上がMySQL ストアド プロシージャで「エラー 1329: データがありません」を抑制するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。