複合ステートメント
SQLスクリプトの複合ステートメントには、BEGIN-ENDペア内に複数のステートメントがあります。複合ステートメントは、ルートステートメントでない場合は、セミコロンで終了する必要があります。
構文
[<label>:]
BEGIN
[<transactionSpecification>]
[<declaration>; …]
[<statement>; …]
[<exceptionBlock>]
END [<label>]
備考
•このラベルは、
LEAVEで定義されているLEAVEステートメントで使用するためのものです。
•ラベルは、ブロックに名前を付けるために使用されるオプションの識別子です。ルートのBEGINステートメント(PROCEDURE宣言の直後のステートメント)には、ラベルを付けることができます(前に付けることができます)。
•BEGINが存在する場合、ENDはオプションです。 BEGINが存在しない場合、ENDラベルを付けることは違法です。 BEGINとENDの両方が存在する場合は、両方が同じ識別子を持っている必要があります。
•複合ステートメントは空にすることができます。
例
PROCEDURE init_table()
BEGIN
DELETE FROM T;
INSERT INTO T DEFAULT VALUEs;
END