SQL Server BEGIN END

概要:このチュートリアルでは、BEGIN...ENDステートメントを使って一連のTransact-SQLステートメントをステートメントブロックにラップする方法を学習します。

BEGIN…END statement

BEGIN...END Statementは、ステートメントブロックを定義するときに使用されます。 ステートメントブロックは、一緒に実行される一連のSQLステートメントで構成されています。 ステートメントブロックはバッチとも呼ばれます。

言い換えれば、ステートメントが文であるなら、BEGIN...ENDステートメントでは段落を定義することが可能です。

以下に BEGIN...END ステートメントの構文を示します。

Code language: SQL (Structured Query Language) (sql)

この構文では、たとえば BEGINEND キーワードの間に一連の SQL ステートメントを配置します。

Code language: SQL (Structured Query Language) (sql)

Output:

SQL Server BEGIN END example

PRINT 文によって生成されたメッセージを表示するには、SQL Server Management StudioでMessagesタブをクリックする必要があります。 デフォルトでは、[メッセージ]タブは非表示です。

  • この例では、まず、BEGINキーワードで始まり、END
    キーワードで終わるブロックがあります。
  • 次に、ブロック内に、定価が10万より大きい製品を検索するSELECTステートメントがあります。

なお、@@ROWCOUNTはシステム変数で、直前のステートメントによって影響を受けた行数を返します。

BEGIN... ENDステートメントは、SQLステートメントの論理ブロックを束ねます。 ストアドプロシージャや関数の最初と最後にBEGIN...ENDを使用することがよくあります。 しかし、厳密には必要ありません。

ただし、IF ELSE文やWHILE文など、複数の文をラップする必要がある場合はBEGIN...ENDが必要です。

入れ子のBEGIN… END

ステートメントブロックは入れ子にすることができます。

次の例を考えてみましょう。

Code language: SQL (Structured Query Language) (sql)

この例では、BEGIN...END ステートメントを使用して、ステートメント ブロック全体を囲んでいます。 このブロックの内部では、 を IF...ELSE ステートメントにも使用しました。

このチュートリアルでは、SQL Server BEGIN...END ステートメントを使用して Transact-SQL ステートメントをブロックにラップすることについて学習しました。

コメントを残す

メールアドレスが公開されることはありません。