Updated on 2024-05-07 GMT+08:00

BEGIN

Description

BEGIN may be used to initiate an anonymous block or a single transaction. This section describes the syntax of BEGIN used to initiate an anonymous block. For details about the BEGIN syntax that initiates transactions, see START TRANSACTION.

An anonymous block is a structure that can dynamically create and execute stored procedure code instead of permanently storing code as a database object in the database.

Precautions

None

Syntax

  • Enable an anonymous block.
    1
    2
    3
    4
    5
    [DECLARE [declare_statements]] 
    BEGIN
    execution_statements  
    END;
    /
    
  • Start a transaction.
    1
    2
    3
    4
    5
    6
    7
    BEGIN [ WORK | TRANSACTION ]
      [ 
        { 
           ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE | REPEATABLE READ }
           | { READ WRITE | READ ONLY }
          } [, ...] 
      ];
    

Parameters

  • declare_statements

    Declares a variable, including its name and type, for example, sales_cnt int.

  • execution_statements

    Specifies the statement to be executed in an anonymous block.

    Value range: an existing function name

Examples

1
2
3
4
5
-- Generate a string using an anonymous block.
gaussdb=# BEGIN
dbe_output.print_line('Hello');
END;
/

Helpful Links

START TRANSACTION