ホームページ > データベース > mysql チュートリアル > MySQL でユーザー定義、ローカル、サーバーのシステム変数を宣言して使用する方法は?

MySQL でユーザー定義、ローカル、サーバーのシステム変数を宣言して使用する方法は?

DDD
リリース: 2025-01-22 03:26:15
オリジナル
883 人が閲覧しました

How to Declare and Use User-Defined, Local, and Server System Variables in MySQL?

MySQL 変数の詳しい説明と応用

MySQL の変数は、クエリの実行中に値を一時的に保存するコンテナです。ユーザー定義変数、ローカル変数、サーバー システム変数の 3 つの主なタイプがあります。

ユーザー定義変数 (@ プレフィックス)

  • 宣言: 明示的な宣言は必要ありません
  • 初期値:NULL
  • データ型: 整数、10 進数、浮動小数点、文字列、または NULL
  • 範囲: セッションレベル

ユーザー定義変数を初期化します:

SET @start = 1, @finish = 10;
ログイン後にコピー

例: SELECT クエリでのユーザー定義変数の使用

SELECT * FROM places WHERE place BETWEEN @start AND @finish;
ログイン後にコピー

ローカル変数 (接頭辞なし)

  • ステートメント: DECLARE ステートメントを使用する必要があります
  • 初期値: DEFAULT 句を省略した場合は NULL
  • データ型: 整数、10 進数、文字列、または NULL
  • 範囲: 宣言されている BEGIN...END ブロックに限定されます

ストアド プロシージャでローカル変数を宣言して初期化します:

DECLARE start INT unsigned DEFAULT 1;  
DECLARE finish INT unsigned DEFAULT 10;
ログイン後にコピー

例: ストアド プロシージャでのローカル変数の使用

CREATE PROCEDURE sp_test(var1 INT) 
BEGIN   
    DECLARE start  INT unsigned DEFAULT 1;  
    DECLARE finish INT unsigned DEFAULT 10;

    SELECT  var1, start, finish;

    SELECT * FROM places WHERE place BETWEEN start AND finish; 
END; 
ログイン後にコピー

サーバーシステム変数 (@@ プレフィックス)

  • 宣言: 明示的な宣言は必要ありません
  • 初期値: MySQL サーバーによって設定されたデフォルト値
  • データ型: 変数によって異なります
  • スコープ: グローバル (サーバー全体) またはセッション レベル

サーバー システム変数の現在の値を表示します:

SELECT @@sort_buffer_size;
ログイン後にコピー

サーバー システム変数の値を変更します:

SET GLOBAL sort_buffer_size=1000000;
ログイン後にコピー

以上がMySQL でユーザー定義、ローカル、サーバーのシステム変数を宣言して使用する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート