begin_label:] BEGIN [
statement_list] END [
BEGIN ... END
syntax is used for writing compound statements, which can appear
within stored programs. A compound statement can contain multiple
statements, enclosed by the
statement_list represents a list of one
or more statements, each terminated by a semicolon
;) statement delimiter.
statement_list is optional, which means
that the empty compound statement (
Use of multiple statements requires that a client is able to send
statement strings containing the
delimiter. This is handled in the mysql
command-line client with the
; end-of-statement delimiter (for
be used in a program body. For an example, see
Section 18.1, “Defining Stored Programs”.
END block can be labeled. Labels follow these rules:
end_label cannot be given unless
begin_label is also present.
end_label are present, they must be
Labels can be up to 16 characters long.
[NOT] ATOMIC clause is not
supported. This means that no transactional savepoint is set at
the start of the instruction block and the
BEGIN clause used in this context has no effect
on the current transaction.