MySQL ストアド プロシージャの使用例の分析

MySQL ストアド プロシージャの使用例の分析

この記事では、MySQL ストアド プロシージャの使用方法について説明します。ご参考までに、詳細は以下の通りです。

概要:

簡単に言えば、これは強力で、JAVA 言語のメソッドに似た比較的複雑な論理関数を実装できる一連の SQL ステートメントです。

ストアド プロシージャは、どちらも SQL ステートメントのセットであるという点でトリガーに似ていますが、ストアド プロシージャはアクティブに呼び出され、何かが発生したときに自動的に呼び出されるトリガーよりも強力です。

区切り文字 //
CREATE PROCEDURE proc (IN num INT)
始める
v9_qd_account の制限数から * を選択します。
終わり //
区切り文字 ;

埋め込む:

@p_in=5 を設定します。
proc(@p_in); を呼び出します。

または

proc(5)を呼び出す。

サイクル

num int default 5 を宣言します。
数値を 1 に設定します。
数値 = 数値 + 1 を設定します。

区切り文字 //
プロシージャ proc を作成します (IN sname VARCHAR(20), IN pwd VARCHAR(5), IN qd INT, IN start INT, IN end INT)
  始める
  var INT を宣言します。
  mynameをVARCHAR(30)で宣言します。
  SET var=開始;
  while var<end do
    SET myname = CONCAT(sname,LPAD(var,3,'0'));
    v9_qd_account (storename,password,qudao,regdate) に value(myname,md5(pwd),qd,UNIX_TIMESTAMP()) を挿入します。
    SET var=var+1;
  終了しながら;
  終わり //
区切り文字 ;

電話

proc を呼び出します ('test','123456',1,1,21);

チェック

SHOW PROCEDURE STATUS LIKE 'C%' \G; 文字 C で始まるストアド プロシージャを表示します。SHOW CREATE PROCEDURE proc \G; ステータスと作成ステートメントを表示します。information_schema.Routines で表示します。

消去

プロシージャが存在する場合は削除します。
関数 mytest を削除します。

ヒント

パラメータに中国語が含まれている場合は、これを実行できます

CREATE PROCEDURE useInfo(IN u_name VARCHAR(50) 文字セット gbk,OUT u_age INT) ......

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL ストアド プロシージャ スキル」、「MySQL 共通関数の概要」、「MySQL ログ操作スキル」、「MySQL トランザクション操作スキルの概要」、および「MySQL データベース ロック関連スキルの概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQL ストアド プロシージャでの変数の定義と割り当て
  • MySQLストアドプロシージャの詳細な説明
  • MySQL ストアド プロシージャ カーソル ループの使用の概要
  • MySQL ストアド プロシージャの例 (トランザクション、出力パラメータ、ネストされた呼び出しを含む)
  • MySql ストアド プロシージャと関数の詳細な説明
  • mysql クエリ データベース ストアド プロシージャと関数ステートメント
  • 入力および出力パラメータを持つ MySQL ストアド プロシージャの例
  • MySQL のストアド プロシージャの分析例とストアド プロシージャの呼び出し方法
  • MySQL ストアドプロシージャと関数の違い
  • MySQL ストアド プロシージャで動的 SQL ステートメントを実行する方法
  • MySQL ストアド プロシージャでカーソルを使用する例
  • カーソルを使用したMySQLストアドプロシージャネストループのサンプルコード

<<:  Windows Server 2016 でサービスを展開する方法 (グラフィック チュートリアル)

>>:  Node.js組み込みモジュールの詳細な説明

推薦する

Rabbitmq heartbea ハートビート検出メカニズムの原理の分析

序文RabbitMQ を使用する場合、一定期間クライアントと RabbitMQ サーバーの間でトラフ...

エラー 1045 (28000): ユーザー ''root''@''localhost'' のアクセスが拒否されました (パスワード使用: YES) 実用的な解決策

昨日はデータベースへの接続に問題はありませんでしたが、今日はデータベースへの接続時にこのエラーが報告...

Vue3における7種類のコンポーネント通信の詳細

目次1. Vue3コンポーネント通信方式2. Vue3通信の使い方2.1 小道具2.2 $エミット2...

VMware Workstation16 と Navicat リモート接続での Centos7 での MySQL8.0 インストール プロセス

目次1. CentOS7+MySQL8.0、yumソースインストール2. MySQLにログインしてパ...

Vue2 と Vue3 でウォッチ リスナーを使用する方法

watch : データの変更を監視する(特定の値の変更イベント) vue2.x データ(){ 戻る ...

MySQLデータベースのトランザクション分離レベルの詳細な説明

データベーストランザクション分離レベルデータベース トランザクションには、低から高まで 4 つの分離...

Ubuntu 16.04 サーバーで MySQL を設定し、リモート接続を有効にする方法

背景最近、Node.js を勉強しているのですが、クラウド サーバーがあることを思い出しました。しか...

MySQL/MariaDB ルートパスワードリセットチュートリアル

序文パスワードを忘れることは、よく遭遇する問題です。MySQL または MariaDB データベース...

CentOS7 インストール GUI インターフェースとリモート接続の実装

ブラウザ (Web ドライバー) ベースの Selenium テクノロジを使用してデータをクロールす...

CSS フォントの新しい使い方: カラーフォントの実装

デザイナーが特別なイベントのタイトルフォントとして以下のフォントを使用したい場合はどうすればよいでし...

Vueカスタムテーブル列実装プロセス記録

目次序文レンダリングsetTable コンポーネント使用結論序文フォームを使用して PC 側のプロジ...

MySQL CHARとVARCHARの保存と読み取りの違い

導入保存時と読み取り時に CHAR 型と VARCHAR 型の違いを本当にご存知ですか?まずいくつか...

CSS スティッキー配置位置の詳細な説明: スティッキー問題の落とし穴

前書き: position:sticky は CSS ポジショニングの新しい属性です。相対ポジショニ...

Vue computedのキャッシュ実装原理の詳細な説明

目次計算結果を初期化する依存関係の収集アップデートを配布する総括するこの記事では、計算された初期化と...