PREPARE creates a prepared statement.
A prepared statement is a performance optimizing object on the server. When the PREPARE statement is executed, the specified query is parsed, analyzed, and rewritten. When the EXECUTE is executed, the prepared statement is planned and executed. This avoids repetitive parsing and analysis. After the PREPARE statement is created, it exists throughout the database session. Once it is created (even if in a transaction block), it will not be deleted when a transaction is rolled back. It can only be deleted by explicitly invoking DEALLOCATE or automatically deleted when the session ends.
PREPARE name [ ( data_type [, ...] ) ] AS statement;
Specifies the name of a prepared statement. It must be unique in the current session.
Specifies the type of a parameter.
Specifies a SELECT, INSERT, UPDATE, DELETE, or VALUES statement.
See Example in EXECUTE.