mysql ストアド プロシージャの例外処理分析_MySQL
例外キャプチャのタイプと処理メソッドを定義します:
リーリー
ここで注意すべき点がいくつかあります:
a,condition_value [,condition_value], これは、複数の状況を含めることができることを意味します (角括弧はオプションを示します)。つまり、複数の状況に対応する操作を実行するようにハンドラーを定義できることに加えて、condition_value には以下を含めることができます。上記にリストされている 6 つの値があります:
1. mysql_error_code、これは mysql のエラー コードを表します。エラー コードは、mysql 自体によって定義される数値です。この値は、mysql データベースのエラー コードと情報を参照できます。
2. SQLSTATE [VALUE] sqlstate_value、これはエラーコードと同様に 5 文字の文字列です。つまり、ANSI SQL や ODBC などの標準から引用されています。 mysql が独自に使用するために完全に定義されている上記の error_code とは異なり、より標準化されています。これは最初のものと似ており、mysql データベースのエラー コードと情報を参照することもできます。
3. 条件名、これは DECLARE...CONDITION ステートメントを使用して定義される条件名です。独自の条件名を定義する方法は後で紹介します。
4. SQLWARNING。SQLTATE の文字列が「01」で始まるエラーを示します。例: Error: 1311 SQLSTATE: 01000 (ER_SP_UNINIT_VAR)
5. NOT FOUND、SQLTATE の文字列が「02」で始まるエラーを示します。例: Error: 1329 SQLSTATE: 02000 (ER_SP_FETCH_NO_DATA)
6. SQLEXCEPTION。SQLSTATE の文字列が「00」、「01」、または「02」で始まらないエラーを示します。ここで「00」で始まる SQLSTATE は、実際にはエラーではなく正常に実行されたことを示します。 2 つ目は、上記の 4 と 5 の 2 つの状況です。
上記の 6 つの状況は、実際には 2 つのカテゴリに分類できます:
最初のカテゴリは比較的明確な処理で、指定されたエラー状況を処理するもので、3 つのメソッド 1、2、および 3 が含まれます。
1. SQL WARNING と NOT FOUND に対処する方法は、エラーを無視して実行を続行することです。したがって、カーソルの例では、繰り返し条件によって判断された値に対して no_more_products=1 ハンドラーを作成しないと、ループが実行されます。つづきます。 。
2. SQLEXCEPTION の場合、デフォルトの処理方法はエラーが発生した時点で終了します。
b、ステートメント、これは比較的単純で、特定の条件/エラーが発生したときに実行するステートメントです。SET var = value などの単純なステートメントにすることも、複雑な multi ステートメントにすることもできます。 -line ステートメント。複数の行がある場合は、BEGIN ..... END を使用してここにステートメントを含めることができます (これは Delphi の状況と似ています。ストアド プロシージャにも複数の行があることに注意してください。開始 .... 終了) 。
c、handler_action、 これには、上記のステートメントを実行した後に実行するアクションを示します。これには、続行、終了、キャンセルを意味する CONTINUE、EXIT、および UNDO が含まれます (現時点ではサポートされていません)。ここに 2 つのアクションがあります。実際、これら 2 つのアクションは SQLWARNING および NOT FOUND のデフォルトの処理メソッドであり、EXIT は SQLEXCEPTION のデフォルトの処理メソッドです。
別の:
MySQL エラー コードまたは SQLSTATE コードの可読性が低すぎるため、命名条件が導入されています:
文法:
リーリー
リーリー
例:
リーリー
以上がこの記事の全内容です。皆様の学習に少しでもお役に立てれば幸いです。よろしくお願いいたします。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









MySQLは、インストールが簡単で、強力で管理しやすいため、初心者に適しています。 1.さまざまなオペレーティングシステムに適した、単純なインストールと構成。 2。データベースとテーブルの作成、挿入、クエリ、更新、削除などの基本操作をサポートします。 3.参加オペレーションやサブクエリなどの高度な機能を提供します。 4.インデックス、クエリの最適化、テーブルパーティション化により、パフォーマンスを改善できます。 5。データのセキュリティと一貫性を確保するために、バックアップ、リカバリ、セキュリティ対策をサポートします。

NAVICAT自体はデータベースパスワードを保存せず、暗号化されたパスワードのみを取得できます。解決策:1。パスワードマネージャーを確認します。 2。NAVICATの「パスワードを記憶する」機能を確認します。 3.データベースパスワードをリセットします。 4.データベース管理者に連絡してください。

NAVICATプレミアムを使用してデータベースを作成します。データベースサーバーに接続し、接続パラメーターを入力します。サーバーを右クリックして、[データベースの作成]を選択します。新しいデータベースの名前と指定された文字セットと照合を入力します。新しいデータベースに接続し、オブジェクトブラウザにテーブルを作成します。テーブルを右クリックして、データを挿入してデータを挿入します。

MySQLでテーブルをコピーするには、新しいテーブルの作成、データの挿入、外部キーの設定、インデックスのコピー、トリガー、ストアドプロシージャ、および機能が必要です。特定の手順には、同じ構造を持つ新しいテーブルの作成が含まれます。元のテーブルからデータを新しいテーブルに挿入します。同じ外部キーの制約を設定します(元のテーブルに1つがある場合)。同じインデックスを作成します。同じトリガーを作成します(元のテーブルに1つがある場合)。同じストアドプロシージャまたは関数を作成します(元のテーブルが使用されている場合)。

Passwordが暗号化された形式で保存されているため、MariadbのNavicatはデータベースパスワードを直接表示できません。データベースのセキュリティを確保するには、パスワードをリセットするには3つの方法があります。NAVICATを介してパスワードをリセットし、複雑なパスワードを設定します。構成ファイルを表示します(推奨されていない、高リスク)。システムコマンドラインツールを使用します(推奨されません。コマンドラインツールに習熟する必要があります)。

次のコマンドでmysqlデータベースを表示します。サーバーに接続します:mysql -u username -pパスワードrun showデータベース。すべての既存のデータベースを取得するコマンド[データベース]を選択します。データベース名を使用します。テーブルを表示:表を表示します。テーブル構造を表示:テーブル名を説明してください。データを表示:[テーブル名]から[ *]を選択します。

MySQLのコピーと貼り付けには、次の手順が含まれています。データを選択し、Ctrl C(Windows)またはCMD C(MAC)でコピーします。ターゲットの場所を右クリックして、貼り付けまたはCTRL V(Windows)またはCMD V(MAC)を使用します。コピーされたデータは、ターゲットの場所に挿入されるか、既存のデータを置き換えます(データが既にターゲットの場所に存在するかどうかに応じて)。

手順に従って、NAVICATで新しいMySQL接続を作成できます。アプリケーションを開き、新しい接続(CTRL N)を選択します。接続タイプとして「mysql」を選択します。ホスト名/IPアドレス、ポート、ユーザー名、およびパスワードを入力します。 (オプション)Advanced Optionsを構成します。接続を保存して、接続名を入力します。
