MySQL 変数宣言とストアド プロシージャの分析

MySQL 変数宣言とストアド プロシージャの分析

変数の宣言

グローバル変数の設定

@a='新しい変数' を設定します。

関数やストアドプロシージャで使用される変数を宣言する

int unsigned default 1 をクリアします。

このタイプの変数は設定する必要があり、begin..end セクション内にのみ存在します。

select .. into.. はテーブルの内容を指定された変数に直接割り当てます

銀行制限 1 から名前を選択し、@a、@b に入札します。

注意すべき点は、変数名をフィールド名と同じにすることはできないということです。

ストアドプロシージャ

ストアド プロシージャは、共通の操作をカプセル化して、さまざまなプラットフォームで使用できるようにします。

ストアド プロシージャには戻り値がなく、SQL ステートメントで呼び出すことはできません。呼び出しによってのみ呼び出すことができ、結果セットは返されません。実行時に実行されます。

ストアド プロシージャで SQL ステートメントを実行するときは、システムのデフォルトのターミネータを別のものにリセットする必要があることに注意してください。そうしないと、システムは誤ってプログラムが終了したと認識し、書き込みプロセスの途中でエラーを報告します。

終了コマンド文字を$に変更します

区切り文字$+Enter または省略形 \d $+Enter

すべてのストアドプロシージャを表示

手順のステータスを表示します。

指定されたストアドプロシージャを削除します

プロシージャのプロシージャ名を削除します。

ストアドプロシージャのデモ'

\d $ 1 プロシージャ yanshi(in arg tinyint) を作成します
始める
age tinyint のデフォルトを 0 と宣言します。
age=arg を設定します。
年齢<20の場合
「20未満の数」を選択します。
それ以外の場合、年齢>20
「20より大きい数値」を選択します。
終了の場合;
終わり
$
//呼び出し手順セット@num=12$
yanshi(@num)$ を呼び出す
ヤンシ(21)$に電話する

ストアドプロシージャに入力された数値がどのステージに属するかを判断する

ストアドプロシージャには、in、out、inoutの3種類のパラメータ渡しがあります。

外部から渡された変数を、渡された変数の元の値を変更せずに出力することができます。

プロシージャ a(in id int) を作成します。
始める
  IDを選択;
  idを100に設定します。
終わり
$
@id=1$ を設定
call a(@id)$ //出力1、これは外部から渡された@idの値です。 select $id$ //出力1、これは渡された値が保存プロセス中に変更されていないことを示します。

outは外部から渡された値を出力できず、渡された変数の元の値を変更します。

プロシージャ b(out id int) を作成します。
始める
  IDを選択;
  idを100に設定します。
終わり
$
@id=1$ を設定
b(@id)$ を呼び出す // null を入力する
@id$ を選択 // 出力 100

inoutは渡された変数を出力することも、渡された変数を変更することもできる。

次はコンピュータのハードウェアパフォーマンスをチェックしてみましょう

その年の銀行テーブルを覚えていますか? 彼はそれを保存し、次のコマンドを実行しました。

プロシージャ addbank() を作成する
始める
  i int をデフォルトで 0 と宣言します。
  i = 5000000 に設定します。
  i > 0 の場合
  銀行(名前)の値(i)に挿入します。
  i = i - 1 と設定します。
  終了しながら;
終わり
$
addbank() を呼び出す$

幸運を

要約する

以上がMySQLの変数宣言とストアドプロシージャの分析に関するこの記事の内容です。皆様のお役に立てれば幸いです。興味のある方は、いくつかの重要な MySQL 変数、MySQL の準備原則の詳細な説明、ORACLE SQL ステートメントの最適化手法の重要なポイントの分析などを参照してください。ご質問がある場合は、いつでもメッセージを残していただければ、編集者がすぐに返信いたします。 123WORDPRESS.COM をサポートしてくださっている皆様、ありがとうございます!

以下もご興味があるかもしれません:
  • MySQL 8.0.12 のインストールと環境変数の設定チュートリアル (Win10 の場合)
  • MySQLでグローバル変数とセッション変数を設定する2つの方法の詳細な説明
  • MySQL 5.6.23 のインストールと設定環境変数のチュートリアル
  • MySQL 8 の新機能: 永続的なグローバル変数を変更する方法
  • MySQLクエリステートメント内のユーザー変数のコード分析
  • いくつかの重要なMySQL変数
  • MySQLは変数を使用してさまざまなソートを実装します
  • MySQL ストアド プロシージャにおける変数の宣言と設定の違いについて簡単に説明します。
  • MySQL 変数の原理と応用例

<<:  CocosCreatorでリストを作成する方法

>>:  Linux での Python のアップグレードと pip のインストールの詳細な説明

推薦する

CSS3 で Taobao に空白スペースを実装する方法

Taobao用の空白スペースを作成します。 ブラウザページを縮小すると、コンテンツ領域は縮小されませ...

ウェブデザインスキル:中国語と英語が混在するウェブページの上位表示の問題

<br />私はこの問題で気が狂いそうです。症状は次のとおりです。 症状の説明: Int...

MySQL 5.7.23 winx64 のインストールと設定方法のグラフィックチュートリアル (win10 の場合)

この記事はMySQL 5.7.23 winx64のインストールチュートリアルを記録します。具体的な内...

CentOS6.8 は cmake を使用して MySQL5.7.18 をインストールします。

オンライン情報を参考に、cmakeを使用してCentOS6.8サーバーにMySQL5.7.18をイン...

大規模なMySQLデータベース用のマスタースレーブシステムを構築するアイデアを共有する

今週は戦争のように忙しかったです。他人に操られているような気がします。毎日朝早く出勤して夜遅く帰り、...

Linux システムで MySQL の文字セットを UTF8 に変更する手順

目次1. データベース内の MySQL ステータスを確認します。 2. 設定ファイルを変更します。 ...

Ubuntu 20.04 では、隠し録音ノイズ低減機能が有効になります (推奨)

最近、 Ubuntu 20.04でkazamを使用して録音しているときに、問題が見つかりました。シス...

初心者向けBootstrap 3.0学習ノート

この学習ノートの最初の記事として、シリーズの他の記事と同様に、Bootstrap の紹介から始め、そ...

Linux コマンドラインターミナルで画面を分割するための 2 つのツール

ターミナル分割画面ツールは2つあります: screen と tmux 1. 画面分割を使用する(上下...

EF (Entity Framework) の挿入または更新データ エラーの解決方法

エラー メッセージ:ストアの更新、挿入、または削除ステートメントが予期しない行数 (0) に影響を与...

MySQL トランザクション分析

取引トランザクションはビジネス ロジックの基本単位です。各トランザクションは一連の SQL ステート...

MyISAMとInnoDBの違いについてお話しましょう

主な違いは次のとおりです。 1. MySQL はデフォルトで MyISAM を使用します。 2. M...

MySQLクエリトランザクション処理へのノード接続の実装

目次トピックmysqlの追加、削除、変更、クエリを入力しますMySQL トランザクション処理私は M...

Nginx での Frp による https への強制リダイレクト設定の詳細な説明

自宅のルーターが300Mの帯域幅を80Mに強制的に減らしたため、3205Uソフトルーターを購入しまし...

クールな点滅アラームボタンをおすすめします

効果は以下のとおりです。 コードは次のとおりです (クリックすると展開してソース コードが表示されま...