summaryrefslogtreecommitdiff
path: root/src/backend/parser/gram.y
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/parser/gram.y')
-rw-r--r--src/backend/parser/gram.y27
1 files changed, 15 insertions, 12 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index 463a8d5a4e..674a6d0d92 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -11,7 +11,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.364 2002/08/29 00:17:04 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.365 2002/09/02 02:13:01 tgl Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
@@ -3346,18 +3346,19 @@ opt_column: COLUMN { $$ = COLUMN; }
*
*****************************************************************************/
-RuleStmt: CREATE RULE name AS
+RuleStmt: CREATE opt_or_replace RULE name AS
{ QueryIsRule=TRUE; }
ON event TO qualified_name where_clause
DO opt_instead RuleActionList
{
RuleStmt *n = makeNode(RuleStmt);
- n->relation = $9;
- n->rulename = $3;
- n->whereClause = $10;
- n->event = $7;
- n->instead = $12;
- n->actions = $13;
+ n->replace = $2;
+ n->relation = $10;
+ n->rulename = $4;
+ n->whereClause = $11;
+ n->event = $8;
+ n->instead = $13;
+ n->actions = $14;
$$ = (Node *)n;
QueryIsRule=FALSE;
}
@@ -3537,12 +3538,14 @@ opt_trans: WORK {}
*
*****************************************************************************/
-ViewStmt: CREATE VIEW qualified_name opt_column_list AS SelectStmt
+ViewStmt: CREATE opt_or_replace VIEW qualified_name opt_column_list
+ AS SelectStmt
{
ViewStmt *n = makeNode(ViewStmt);
- n->view = $3;
- n->aliases = $4;
- n->query = (Query *) $6;
+ n->replace = $2;
+ n->view = $4;
+ n->aliases = $5;
+ n->query = (Query *) $7;
$$ = (Node *)n;
}
;