1/*-------------------------------------------------------------------------
4 * PREPARE, EXECUTE and DEALLOCATE commands, and prepared-stmt storage
7 * Copyright (c) 2002-2025, PostgreSQL Global Development Group
9 * src/include/commands/prepare.h
11 *-------------------------------------------------------------------------
22 * The data structure representing a prepared statement. This is now just
23 * a thin veneer over a plancache entry --- the main addition is that of
26 * Note: all subsidiary storage lives in the referenced plancache entry.
30 /* dynahash.c requires key to be first field */
33 bool from_sql;
/* prepared via SQL, not FE/BE protocol? */
38/* Utility statements PREPARE, EXECUTE, DEALLOCATE, EXPLAIN EXECUTE */
40 int stmt_location,
int stmt_len);
50/* Low-level access to stored prepared statements */
void DropPreparedStatement(const char *stmt_name, bool showError)
void PrepareQuery(ParseState *pstate, PrepareStmt *stmt, int stmt_location, int stmt_len)
TupleDesc FetchPreparedStatementResultDesc(PreparedStatement *stmt)
PreparedStatement * FetchPreparedStatement(const char *stmt_name, bool throwError)
void ExplainExecuteQuery(ExecuteStmt *execstmt, IntoClause *into, ExplainState *es, ParseState *pstate, ParamListInfo params)
void StorePreparedStatement(const char *stmt_name, CachedPlanSource *plansource, bool from_sql)
void ExecuteQuery(ParseState *pstate, ExecuteStmt *stmt, IntoClause *intoClause, ParamListInfo params, DestReceiver *dest, QueryCompletion *qc)
void DropAllPreparedStatements(void)
List * FetchPreparedStatementTargetList(PreparedStatement *stmt)
void DeallocateQuery(DeallocateStmt *stmt)
CachedPlanSource * plansource