複合ステートメント

SQL スクリプトの複合ステートメントには、BEGIN-END ペア内に複数のステートメントがあります。複合ステートメントは、ルート ステートメントでない場合は、セミコロンで終了する必要があります。

構文

[<label>:]
BEGIN 
	[<transactionSpecification>]
	[<declaration>; …]
	[<statement>; …]
	[<exceptionBlock>]
END [<label>]

備考

このラベルは、「LEAVE」で定義された LEAVE ステートメントで使用されます。
ラベルは、ブロックに名前を付けるために使用されるオプションの識別子です。ルートの BEGIN ステートメント (PROCEDURE 宣言の直後にあるステートメント) には、ラベルを付けることができます (前に付けることができます)。
BEGIN が存在する場合、END はオプションです。BEGIN が存在しない場合、END ラベルを持つことは違法です。BEGINEND の両方が存在する場合、両方が同じ識別子を持つ必要があります。
複合ステートメントは空にすることができます。

PROCEDURE init_table () 
BEGIN
  DELETE FROM T;
  INSERT INTO T DEFAULT VALUEs;
END