1 /*-------------------------------------------------------------------------
4 * prototypes for tablecmds.c.
7 * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
12 *-------------------------------------------------------------------------
17 #include "nodes/parsenodes.h"
18 #include "utils/relcache.h"
21 extern Oid
DefineRelation(CreateStmt
*stmt
, char relkind
);
23 extern void RemoveRelations(DropStmt
*drop
);
25 extern void AlterTable(AlterTableStmt
*stmt
);
27 extern void ATExecChangeOwner(Oid relationOid
, Oid newOwnerId
, bool recursing
);
29 extern void AlterTableInternal(Oid relid
, List
*cmds
, bool recurse
);
31 extern void AlterTableNamespace(RangeVar
*relation
, const char *newschema
,
34 extern void AlterRelationNamespaceInternal(Relation classRel
, Oid relOid
,
35 Oid oldNspOid
, Oid newNspOid
,
38 extern void CheckTableNotInUse(Relation rel
, const char *stmt
);
40 extern void ExecuteTruncate(TruncateStmt
*stmt
);
42 extern void renameatt(Oid myrelid
,
43 const char *oldattname
,
44 const char *newattname
,
48 extern void RenameRelation(Oid myrelid
,
49 const char *newrelname
,
52 extern void RenameRelationInternal(Oid myrelid
,
53 const char *newrelname
,
56 extern void find_composite_type_dependencies(Oid typeOid
,
57 const char *origTblName
,
58 const char *origTypeName
);
60 extern AttrNumber
*varattnos_map(TupleDesc old
, TupleDesc
new);
61 extern AttrNumber
*varattnos_map_schema(TupleDesc old
, List
*schema
);
62 extern void change_varattnos_of_a_node(Node
*node
, const AttrNumber
*newattno
);
64 extern void register_on_commit_action(Oid relid
, OnCommitAction action
);
65 extern void remove_on_commit_action(Oid relid
);
67 extern void PreCommit_on_commit_actions(void);
68 extern void AtEOXact_on_commit_actions(bool isCommit
);
69 extern void AtEOSubXact_on_commit_actions(bool isCommit
,
70 SubTransactionId mySubid
,
71 SubTransactionId parentSubid
);
73 #endif /* TABLECMDS_H */