gooderp18绿色标准版
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

58 lines
1.9KB

  1. /*-------------------------------------------------------------------------
  2. *
  3. * utility.h
  4. * prototypes for utility.c.
  5. *
  6. *
  7. * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
  8. * Portions Copyright (c) 1994, Regents of the University of California
  9. *
  10. * src/include/tcop/utility.h
  11. *
  12. *-------------------------------------------------------------------------
  13. */
  14. #ifndef UTILITY_H
  15. #define UTILITY_H
  16. #include "tcop/tcopprot.h"
  17. typedef enum
  18. {
  19. PROCESS_UTILITY_TOPLEVEL, /* toplevel interactive command */
  20. PROCESS_UTILITY_QUERY, /* a complete query, but not toplevel */
  21. PROCESS_UTILITY_QUERY_NONATOMIC, /* a complete query, nonatomic
  22. * execution context */
  23. PROCESS_UTILITY_SUBCOMMAND /* a portion of a query */
  24. } ProcessUtilityContext;
  25. /* Hook for plugins to get control in ProcessUtility() */
  26. typedef void (*ProcessUtility_hook_type) (PlannedStmt *pstmt,
  27. const char *queryString, ProcessUtilityContext context,
  28. ParamListInfo params,
  29. QueryEnvironment *queryEnv,
  30. DestReceiver *dest, char *completionTag);
  31. extern PGDLLIMPORT ProcessUtility_hook_type ProcessUtility_hook;
  32. extern void ProcessUtility(PlannedStmt *pstmt, const char *queryString,
  33. ProcessUtilityContext context, ParamListInfo params,
  34. QueryEnvironment *queryEnv,
  35. DestReceiver *dest, char *completionTag);
  36. extern void standard_ProcessUtility(PlannedStmt *pstmt, const char *queryString,
  37. ProcessUtilityContext context, ParamListInfo params,
  38. QueryEnvironment *queryEnv,
  39. DestReceiver *dest, char *completionTag);
  40. extern bool UtilityReturnsTuples(Node *parsetree);
  41. extern TupleDesc UtilityTupleDescriptor(Node *parsetree);
  42. extern Query *UtilityContainsQuery(Node *parsetree);
  43. extern const char *CreateCommandTag(Node *parsetree);
  44. extern LogStmtLevel GetCommandLogLevel(Node *parsetree);
  45. extern bool CommandIsReadOnly(PlannedStmt *pstmt);
  46. #endif /* UTILITY_H */
上海开阖软件有限公司 沪ICP备12045867号-1