|
1 |
| -/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.376 2008/10/14 09:31:04 meskes Exp $*/ |
| 1 | +/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.377 2008/10/21 08:38:16 petere Exp $*/ |
2 | 2 |
|
3 | 3 | /* Copyright comment*/
|
4 | 4 | %{
|
@@ -392,7 +392,7 @@ add_typedef(char *name, char * dimension, char * length, enum ECPGttype type_enu
|
392 | 392 | /* special embedded SQL token*/
|
393 | 393 | %tokenSQL_ALLOCATESQL_AUTOCOMMITSQL_BOOLSQL_BREAK
|
394 | 394 | SQL_CALLSQL_CARDINALITYSQL_CONNECT
|
395 |
| -SQL_COUNTSQL_DATA |
| 395 | +SQL_COUNT |
396 | 396 | SQL_DATETIME_INTERVAL_CODE
|
397 | 397 | SQL_DATETIME_INTERVAL_PRECISIONSQL_DESCRIBE
|
398 | 398 | SQL_DESCRIPTORSQL_DISCONNECTSQL_FOUND
|
@@ -431,7 +431,7 @@ add_typedef(char *name, char * dimension, char * length, enum ECPGttype type_enu
|
431 | 431 | CREATEROLE CREATEUSER CROSS CSV CTYPE CURRENT_P CURRENT_DATE CURRENT_ROLE
|
432 | 432 | CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURSOR CYCLE
|
433 | 433 |
|
434 |
| -DATABASE DAY_P DEALLOCATE DEC DECIMAL_P DECLARE DEFAULT DEFAULTS |
| 434 | +DATA_PDATABASE DAY_P DEALLOCATE DEC DECIMAL_P DECLARE DEFAULT DEFAULTS |
435 | 435 | DEFERRABLE DEFERRED DEFINER DELETE_P DELIMITER DELIMITERS DESC
|
436 | 436 | DICTIONARY DISABLE_P DISCARD DISTINCT DO DOCUMENT_P DOMAIN_P DOUBLE_P DROP
|
437 | 437 |
|
@@ -584,7 +584,7 @@ add_typedef(char *name, char * dimension, char * length, enum ECPGttype type_enu
|
584 | 584 | %type<str>def_elemdef_listdefinitionDefineStmtselect_with_parens
|
585 | 585 | %type<str>opt_insteadeventRuleActionListopt_usingCreateAssertStmt
|
586 | 586 | %type<str>RuleActionStmtOrEmptyRuleActionMultifunc_asreindex_type
|
587 |
| -%type<str>RuleStmtopt_columnoper_argtypesNumConstvar_name |
| 587 | +%type<str>RuleStmtopt_columnopt_set_dataoper_argtypesNumConstvar_name |
588 | 588 | %type<str>MathOpRemoveFuncStmtECPGunreserved_conopt_database_name
|
589 | 589 | %type<str>RemoveAggrStmtopt_proceduralselect_no_parensCreateCastStmt
|
590 | 590 | %type<str>RemoveOperStmtRenameStmtall_Opopt_trustedopt_lancompiler
|
@@ -1398,9 +1398,9 @@ alter_table_cmd:
|
1398 | 1398 | /* ALTER TABLE <name> DROP [COLUMN] <colname> {RESTRICT|CASCADE}*/
|
1399 | 1399 | |DROPopt_columnColIdopt_drop_behavior
|
1400 | 1400 | {$$ = cat_str(4, make_str("drop"),$2,$3,$4); }
|
1401 |
| -/* ALTER TABLE <name> ALTER [COLUMN] <colname> TYPE <typename> [ USING <expression> ]*/ |
1402 |
| -|ALTERopt_columnColIdTYPE_PTypenamealter_using |
1403 |
| -{$$ = cat_str(6, make_str("alter"),$2,$3, make_str("type"),$5,$6); } |
| 1401 | +/* ALTER TABLE <name> ALTER [COLUMN] <colname>[SET DATA]TYPE <typename> [ USING <expression> ]*/ |
| 1402 | +|ALTERopt_columnColIdopt_set_dataTYPE_PTypenamealter_using |
| 1403 | +{$$ = cat_str(7, make_str("alter"),$2,$3,$4,make_str("type"),$6,$7); } |
1404 | 1404 | /* ALTER TABLE <name> ADD CONSTRAINT ...*/
|
1405 | 1405 | |ADD_PTableConstraint
|
1406 | 1406 | {$$ = cat_str(2, make_str("add"),$2); }
|
@@ -2891,6 +2891,10 @@ opt_column: COLUMN{ $$ = make_str("column"); }
|
2891 | 2891 | |/*EMPTY*/{$$ = EMPTY; }
|
2892 | 2892 | ;
|
2893 | 2893 |
|
| 2894 | +opt_set_data:SETDATA_P{$$ = make_str("set data"); } |
| 2895 | +|/*EMPTY*/{$$ = EMPTY; } |
| 2896 | +; |
| 2897 | + |
2894 | 2898 | /*****************************************************************************
|
2895 | 2899 | *
|
2896 | 2900 | * ALTER THING name SET SCHEMA name
|
@@ -6140,7 +6144,7 @@ ECPGSetDescItem: descriptor_item '=' AllConstVar
|
6140 | 6144 |
|
6141 | 6145 |
|
6142 | 6146 | descriptor_item:SQL_CARDINALITY{$$ = ECPGd_cardinality; }
|
6143 |
| -|SQL_DATA{$$ = ECPGd_data; } |
| 6147 | +|DATA_P{$$ = ECPGd_data; } |
6144 | 6148 | |SQL_DATETIME_INTERVAL_CODE{$$ = ECPGd_di_code; }
|
6145 | 6149 | |SQL_DATETIME_INTERVAL_PRECISION {$$ = ECPGd_di_precision; }
|
6146 | 6150 | |SQL_INDICATOR{$$ = ECPGd_indicator; }
|
@@ -6360,7 +6364,6 @@ ECPGKeywords_vanames: SQL_BREAK{ $$ = make_str("break"); }
|
6360 | 6364 | |SQL_CALL{$$ = make_str("call"); }
|
6361 | 6365 | |SQL_CARDINALITY{$$ = make_str("cardinality"); }
|
6362 | 6366 | |SQL_COUNT{$$ = make_str("count"); }
|
6363 |
| -|SQL_DATA{$$ = make_str("data"); } |
6364 | 6367 | |SQL_DATETIME_INTERVAL_CODE{$$ = make_str("datetime_interval_code"); }
|
6365 | 6368 | |SQL_DATETIME_INTERVAL_PRECISION{$$ = make_str("datetime_interval_precision"); }
|
6366 | 6369 | |SQL_FOUND{$$ = make_str("found"); }
|
@@ -6557,6 +6560,7 @@ ECPGunreserved_con: ABORT_P{ $$ = make_str("abort"); }
|
6557 | 6560 | |CTYPE{$$ = make_str("ctype"); }
|
6558 | 6561 | |CURSOR{$$ = make_str("cursor"); }
|
6559 | 6562 | |CYCLE{$$ = make_str("cycle"); }
|
| 6563 | +|DATA_P{$$ = make_str("data"); } |
6560 | 6564 | |DATABASE{$$ = make_str("database"); }
|
6561 | 6565 | /*| DAY_P{ $$ = make_str("day"); }*/
|
6562 | 6566 | |DEALLOCATE{$$ = make_str("deallocate"); }
|
|