mirror of https://github.com/postgres/postgres
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.8 KiB
45 lines
1.8 KiB
/*-------------------------------------------------------------------------
|
|
*
|
|
* nodeModifyTable.h
|
|
*
|
|
*
|
|
* Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
*
|
|
* src/include/executor/nodeModifyTable.h
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef NODEMODIFYTABLE_H
|
|
#define NODEMODIFYTABLE_H
|
|
|
|
#include "nodes/execnodes.h"
|
|
|
|
extern ModifyTableState *ExecInitModifyTable(ModifyTable *node, EState *estate, int eflags);
|
|
extern void ExecEndModifyTable(ModifyTableState *node);
|
|
extern void ExecReScanModifyTable(ModifyTableState *node);
|
|
extern TupleTableSlot *ExecPrepareTupleRouting(ModifyTableState *mtstate,
|
|
EState *estate,
|
|
struct PartitionTupleRouting *proute,
|
|
ResultRelInfo *targetRelInfo,
|
|
TupleTableSlot *slot);
|
|
extern TupleTableSlot *ExecDelete(ModifyTableState *mtstate,
|
|
ItemPointer tupleid, HeapTuple oldtuple, TupleTableSlot *planSlot,
|
|
EPQState *epqstate, EState *estate, bool *tupleDeleted,
|
|
bool processReturning, HeapUpdateFailureData *hufdp,
|
|
MergeActionState *actionState, bool canSetTag,
|
|
bool changingPart);
|
|
extern TupleTableSlot *ExecUpdate(ModifyTableState *mtstate,
|
|
ItemPointer tupleid, HeapTuple oldtuple, TupleTableSlot *slot,
|
|
TupleTableSlot *planSlot, EPQState *epqstate, EState *estate,
|
|
bool *tuple_updated, HeapUpdateFailureData *hufdp,
|
|
MergeActionState *actionState, bool canSetTag);
|
|
extern TupleTableSlot *ExecInsert(ModifyTableState *mtstate,
|
|
TupleTableSlot *slot,
|
|
TupleTableSlot *planSlot,
|
|
EState *estate,
|
|
MergeActionState *actionState,
|
|
bool canSetTag);
|
|
extern void ExecCheckPlanOutput(Relation resultRel, List *targetList);
|
|
|
|
#endif /* NODEMODIFYTABLE_H */
|
|
|