Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
SQL 変数を作成します。
CREATE [ OR REPLACE ] VARIABLE identifier data-type [ { = | DEFAULT } initial-value ]
initial-value : special-value | string | [ - ] number | ( constant-expression ) | built-in-function ( constant-expression ) | NULL
special-value : CURRENT { DATABASE | DATE | PUBLISHER | TIME | TIMESTAMP | USER | UTC TIMESTAMP } | USER
OR REPLACE 句 OR REPLACE 句を指定すると、指定された変数がすでに存在する場合は、その変数が削除され、定義が置き換えられます。OR REPLACE 句は、SQL スクリプトの VAREXISTS 関数の代わりに使用できます。
DEFAULT 句 initial-value を指定する場合は、data-type で定義したデータ型とデータ型を一致させてください。
CREATE VARIABLE 文は、指定したデータ型の新しい変数を作成します。initial-value を指定すると、変数はその値に設定されます。initial-value を指定しなかった場合、SET 文によって別の値が割り当てられるまで、変数には NULL 値が入っています。
変数は、カラム名を使用できる場所なら SQL 式のどこででも使うことができます。名前の決定は次のように実行されます。
クエリの SELECT リストで指定した任意のエイリアスと一致。
任意の参照先テーブルのカラム名と一致。
名前が変数であると仮定。
変数は現在の接続に属し、データベースから切断するか、または DROP VARIABLE 文を使用するまで保持されます。変数は、他の接続からは参照できません。変数は COMMIT または ROLLBACK 文の影響を受けません。
変数は、Embedded SQL プログラムから INSERT または UPDATE 文の大きなテキストまたはバイナリオブジェクトを作成するときに役立ちます。
プロシージャーとトリガーのローカル変数は、複合文の中で宣言します。
なし
SQL/2008 ベンダー拡張。
この例は、VARCHAR(50) データ型の変数 first_name を作成します。
CREATE VARIABLE first_name VARCHAR(50);
この例は、DATE データ型の変数 birthday を作成します。
CREATE VARIABLE birthday DATE;
この例は、初期設定が 5 の INT データ型の変数 v1 を作成します。
CREATE VARIABLE v1 INT = 5;
この例は、変数 v1 がすでに存在しているかどうかに関係なく、変数 v1 を作成し、値を 10 に設定します。
CREATE OR REPLACE VARIABLE v1 INT = 10;