diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index 71c24d9ad811cf2690ec6721126579bbedc87894..296fa4ef6fbd33a2ebc2566a731a6f60001eab6b 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.46 1997/09/16 16:11:20 thomas Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.47 1997/09/18 03:46:18 thomas Exp $
  *
  * HISTORY
  *	  AUTHOR			DATE			MAJOR EVENT
@@ -124,8 +124,7 @@ static char *FlattenStringList(List *list);
 
 %type <str>		relation_name, copy_file_name, copy_delimiter, def_name,
 		database_name, access_method_clause, access_method, attr_name,
-		class, index_name, name, file_name, recipe_name,
-		var_name, aggr_argtype
+		class, index_name, name, file_name, recipe_name, aggr_argtype
 
 %type <constrdef>		ConstraintElem, ConstraintDef
 
@@ -173,7 +172,7 @@ static char *FlattenStringList(List *list);
 %type <astmt>	insert_rest
 
 %type <typnam>	Typename, typname, opt_type
-%type <coldef>	columnDef
+%type <coldef>	columnDef, alter_clause
 %type <defelt>	def_elem
 %type <node>	def_arg, columnElem, where_clause,
 				a_expr, a_expr_or_null, AexprConst,
@@ -321,18 +320,18 @@ stmt :	  AddAttrStmt
 /*****************************************************************************
  *
  * Set PG internal variable
- *	  SET var_name TO 'var_value'
+ *	  SET name TO 'var_value'
  *
  *****************************************************************************/
 
-VariableSetStmt:  SET var_name TO var_value
+VariableSetStmt:  SET Id TO var_value
 				{
 					VariableSetStmt *n = makeNode(VariableSetStmt);
 					n->name  = $2;
 					n->value = $4;
 					$$ = (Node *) n;
 				}
-		|  SET var_name '=' var_value
+		|  SET Id '=' var_value
 				{
 					VariableSetStmt *n = makeNode(VariableSetStmt);
 					n->name  = $2;
@@ -348,14 +347,14 @@ VariableSetStmt:  SET var_name TO var_value
 				}
 		;
 
-var_value:		Sconst			{ $$ = $1; }
+var_value:  Sconst			{ $$ = $1; }
 		;
 
-zone_value:  Sconst				{ $$ = $1; }
-		| LOCAL					{ $$ = NULL; }
+zone_value:  Sconst			{ $$ = $1; }
+		| LOCAL				{ $$ = NULL; }
 		;
 
-VariableShowStmt:  SHOW var_name
+VariableShowStmt:  SHOW Id
 				{
 					VariableShowStmt *n = makeNode(VariableShowStmt);
 					n->name  = $2;
@@ -363,7 +362,7 @@ VariableShowStmt:  SHOW var_name
 				}
 		;
 
-VariableResetStmt:	RESET var_name
+VariableResetStmt:	RESET Id
 				{
 					VariableResetStmt *n = makeNode(VariableResetStmt);
 					n->name  = $2;
@@ -378,16 +377,30 @@ VariableResetStmt:	RESET var_name
  *
  *****************************************************************************/
 
-AddAttrStmt:  ALTER TABLE relation_name opt_inh_star ADD COLUMN columnDef
+AddAttrStmt:  ALTER TABLE relation_name opt_inh_star alter_clause
 				{
 					AddAttrStmt *n = makeNode(AddAttrStmt);
 					n->relname = $3;
 					n->inh = $4;
-					n->colDef = $7;
+					n->colDef = $5;
 					$$ = (Node *)n;
 				}
 		;
 
+alter_clause:  ADD opt_column columnDef
+				{
+					$$ = $3;
+				}
+			| DROP opt_column Id
+				{	elog(WARN,"ALTER TABLE/DROP COLUMN not yet implemented",NULL); }
+			| ALTER opt_column Id SET opt_default
+				{	elog(WARN,"ALTER TABLE/ALTER COLUMN/SET DEFAULT not yet implemented",NULL); }
+			| ALTER opt_column Id DROP DEFAULT
+				{	elog(WARN,"ALTER TABLE/ALTER COLUMN/DROP DEFAULT not yet implemented",NULL); }
+			| ADD ConstraintElem
+				{	elog(WARN,"ALTER TABLE/ADD CONSTRAINT not yet implemented",NULL); }
+		;
+
 /* Column definition might include WITH TIME ZONE, but only for the data types
  *  called out in SQL92 date/time definitions. So, check explicitly for "timestamp"
  * and "time". - thomas 1997-07-14
@@ -2070,12 +2083,12 @@ opt_inh_star: '*'						{ $$ = TRUE; }
 		|  /*EMPTY*/					{ $$ = FALSE; }
 		;
 
-relation_name_list:		name_list ;
+relation_name_list:	name_list;
 
 name_list: name
-				{ $$=lcons(makeString($1),NIL); }
+				{	$$ = lcons(makeString($1),NIL); }
 		| name_list ',' name
-				{ $$=lappend($1,makeString($3)); }
+				{	$$ = lappend($1,makeString($3)); }
 		;
 
 group_clause: GROUP BY groupby_list				{ $$ = $3; }
@@ -2141,13 +2154,13 @@ from_list:	from_list ',' from_val
 				{ $$ = lcons($1, NIL); }
 		;
 
-from_val:  relation_expr AS var_name
+from_val:  relation_expr AS Id
 				{
 					$$ = makeNode(RangeVar);
 					$$->relExpr = $1;
 					$$->name = $3;
 				}
-		| relation_expr var_name
+		| relation_expr Id
 				{
 					$$ = makeNode(RangeVar);
 					$$->relExpr = $1;
@@ -2971,7 +2984,6 @@ access_method:			Id				{ $$ = $1; };
 attr_name:				ColId			{ $$ = $1; };
 class:					Id				{ $$ = $1; };
 index_name:				Id				{ $$ = $1; };
-var_name:				Id				{ $$ = $1; };
 name:					Id				{ $$ = $1; };
 
 date:					Sconst			{ $$ = $1; };