流れ制御
Transact-SQL には、Transact-SQL ステートメント、ステートメント ブロック、ユーザー定義関数、およびストアド プロシージャの実行のフローを制御するためのフロー制御言語と呼ばれる特殊なキーワードがあります。
フロー制御言語がなければ、それぞれの Transact-SQL ステートメントは、出てきた順番に 1 つずつ実行されます。フロー制御言語は、プログラミングのような構造を使用して、ステートメントを結び付け、相互に関連付け、相互に依存させることを可能にします。
これらのフロー制御言語は、ある操作を実行するように Transact-SQL に指示する必要があるときに便利です。たとえば、複数の Transact-SQL ステートメントを 1 つの論理ブロックに含めるときは、BEGIN...END というステートメント ペアを使用します。ある条件が満たされた場合 (IF) に特定のステートメントまたはステートメント ブロックを実行する必要があり、その条件が満たされなかった場合 (ELSE) に他のステートメントまたはステートメント ブロックを実行する必要があるときには、IF...ELSE というステートメント ペアを使用します。
フロー制御ステートメントは、複数のバッチ、ユーザー定義関数、またはストアド プロシージャにまたがることはできません。
フロー制御キーワードは次のとおりです。
BEGIN...END |
BREAK |
GOTO |
CONTINUE |
IF...ELSE |
WHILE |
RETURN |
WAITFOR |
参照
概念
GOTO の使用
WAITFOR の使用
RETURN の使用
その他の技術情報
CONTINUE (Transact-SQL)
DECLARE @local\_variable (Transact-SQL)
ELSE (IF...ELSE) (Transact-SQL)
END (BEGIN...END) (Transact-SQL)
流れ制御言語 (Transact-SQL)
EXECUTE (Transact-SQL)
-- (コメント) (Transact-SQL)
IF...ELSE (Transact-SQL)
/*...*/ (コメント) (Transact-SQL)
PRINT (Transact-SQL)
BEGIN...END (Transact-SQL)
RAISERROR (Transact-SQL)
BREAK (Transact-SQL)
WHILE (Transact-SQL)