diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 1999-07-19 00:26:20 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 1999-07-19 00:26:20 +0000 |
commit | 7f76eab140e703b7847b107245a669e2010886c0 (patch) | |
tree | 8c9d01c654aa8de0e14c0d446817ba60c33d0199 /src/include/parser/parse_clause.h | |
parent | c9814427722798751fa5bf254f597d722d76b5e3 (diff) | |
download | postgresql-7f76eab140e703b7847b107245a669e2010886c0.tar.gz postgresql-7f76eab140e703b7847b107245a669e2010886c0.zip |
Rewrite parser's handling of INSERT ... SELECT so that processing
of the SELECT part of the statement is just like a plain SELECT. All
INSERT-specific processing happens after the SELECT parsing is done.
This eliminates many problems, e.g. INSERT ... SELECT ... GROUP BY using
the wrong column labels. Ensure that DEFAULT clauses are coerced to
the target column type, whether or not stored clause produces the right
type. Substantial cleanup of parser's array support.
Diffstat (limited to 'src/include/parser/parse_clause.h')
-rw-r--r-- | src/include/parser/parse_clause.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/include/parser/parse_clause.h b/src/include/parser/parse_clause.h index a50ab4e0391..3b1aafa07d9 100644 --- a/src/include/parser/parse_clause.h +++ b/src/include/parser/parse_clause.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: parse_clause.h,v 1.11 1999/07/15 23:04:01 momjian Exp $ + * $Id: parse_clause.h,v 1.12 1999/07/19 00:26:16 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -15,8 +15,10 @@ #include "parser/parse_node.h" -extern void makeRangeTable(ParseState *pstate, char *relname, List *frmList, Node **qual); -extern Node *transformWhereClause(ParseState *pstate, Node *where, Node *using); +extern void makeRangeTable(ParseState *pstate, List *frmList, Node **qual); +extern void setTargetTable(ParseState *pstate, char *relname); +extern Node *transformWhereClause(ParseState *pstate, Node *where, + Node *using); extern List *transformGroupClause(ParseState *pstate, List *grouplist, List *targetlist); extern List *transformSortClause(ParseState *pstate, |