diff options
| author | Thomas G. Lockhart <lockhart@fourpalms.org> | 2000-02-15 03:38:29 +0000 |
|---|---|---|
| committer | Thomas G. Lockhart <lockhart@fourpalms.org> | 2000-02-15 03:38:29 +0000 |
| commit | a344a6e7b5d7b2b87f33a155c3ef88bdfdce3fd8 (patch) | |
| tree | 78c19baad416cfe014237bc726baff63aff2b150 /src/backend/catalog | |
| parent | 92c8437d8de8efeb5324fcccb0175beec8e66619 (diff) | |
| download | postgresql-a344a6e7b5d7b2b87f33a155c3ef88bdfdce3fd8.tar.gz | |
Carry column aliases from the parser frontend. Enables queries like
SELECT a FROM t1 tx (a);
Allow join syntax, including queries like
SELECT * FROM t1 NATURAL JOIN t2;
Update RTE structure to hold column aliases in an Attr structure.
Diffstat (limited to 'src/backend/catalog')
| -rw-r--r-- | src/backend/catalog/heap.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/backend/catalog/heap.c b/src/backend/catalog/heap.c index 89c20ce5fa..2840e40633 100644 --- a/src/backend/catalog/heap.c +++ b/src/backend/catalog/heap.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/catalog/heap.c,v 1.120 2000/01/31 04:35:48 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/catalog/heap.c,v 1.121 2000/02/15 03:36:34 thomas Exp $ * * * INTERFACE ROUTINES @@ -53,6 +53,7 @@ #include "optimizer/planmain.h" #include "optimizer/tlist.h" #include "optimizer/var.h" +#include "nodes/makefuncs.h" #include "parser/parse_clause.h" #include "parser/parse_expr.h" #include "parser/parse_relation.h" @@ -1719,7 +1720,8 @@ StoreAttrDefault(Relation rel, AttrNumber attnum, char *adbin, */ rte = makeNode(RangeTblEntry); rte->relname = RelationGetRelationName(rel); - rte->refname = RelationGetRelationName(rel); + rte->ref = makeNode(Attr); + rte->ref->relname = RelationGetRelationName(rel); rte->relid = RelationGetRelid(rel); rte->inh = false; rte->inFromCl = true; @@ -1798,7 +1800,8 @@ StoreRelCheck(Relation rel, char *ccname, char *ccbin) */ rte = makeNode(RangeTblEntry); rte->relname = RelationGetRelationName(rel); - rte->refname = RelationGetRelationName(rel); + rte->ref = makeNode(Attr); + rte->ref->relname = RelationGetRelationName(rel); rte->relid = RelationGetRelid(rel); rte->inh = false; rte->inFromCl = true; @@ -1919,8 +1922,8 @@ AddRelationRawConstraints(Relation rel, * its sole rangetable entry. We need a ParseState for transformExpr. */ pstate = make_parsestate(NULL); - makeRangeTable(pstate, NULL, NULL); - addRangeTableEntry(pstate, relname, relname, false, true, true); + makeRangeTable(pstate, NULL); + addRangeTableEntry(pstate, relname, makeAttr(relname, NULL), false, true, true); /* * Process column default expressions. |
