The PREPARE statement creates an executable SQL statement from a string form of the statement. The character-string form is called a statement string. The executable form is called a prepared statement.
Invocation
This statement can only be embedded in an application program. It is an executable statement that cannot be dynamically prepared. It must not be specified in Java.
Authorization
The authorization rules are those defined for the dynamic preparation of the SQL statement specified by the PREPARE statement. For example, see Queries for the authorization rules that apply when a SELECT statement is prepared.
The statement that is prepared using only the EXPLAIN privilege cannot be executed, and only the descriptive information can be obtained for that statement.
Syntax
Read syntax diagram >>-PREPARE--statement-name--------------------------------------> >--+----------------------------------------------+-------------> '-INTO--descriptor-name--+-------------------+-' | .-NAMES--. | '-USING--+-LABELS-+-' +-ANY----+ '-BOTH---' >--+-+------------------------------------+--FROM--host-variable-+->< | | (1) | | | '-ATTRIBUTES--attr-host-variable-----' | | (2) | '-FROM--string-expression-------------------------------------'
https://www.ibm.com/support/knowledgecenter/SSEPEK_10.0.0/sqlref/src/tpc/db2z_sql_prepare.html