diff options
| author | Peter Eisentraut | 2015-04-26 14:33:14 +0000 |
|---|---|---|
| committer | Peter Eisentraut | 2015-04-26 14:33:14 +0000 |
| commit | cac76582053ef8ea07df65fed0757f352da23705 (patch) | |
| tree | 6ae01041aa61db9d686638b9d4c3ccd30d7c6487 /src/interfaces | |
| parent | f320cbb615e0374b18836337713239da58705cf3 (diff) | |
Add transforms feature
This provides a mechanism for specifying conversions between SQL data
types and procedural languages. As examples, there are transforms
for hstore and ltree for PL/Perl and PL/Python.
reviews by Pavel Stěhule and Andres Freund
Diffstat (limited to 'src/interfaces')
| -rw-r--r-- | src/interfaces/ecpg/preproc/ecpg.tokens | 2 | ||||
| -rw-r--r-- | src/interfaces/ecpg/preproc/ecpg.trailer | 5 | ||||
| -rw-r--r-- | src/interfaces/ecpg/preproc/ecpg_keywords.c | 2 |
3 files changed, 3 insertions, 6 deletions
diff --git a/src/interfaces/ecpg/preproc/ecpg.tokens b/src/interfaces/ecpg/preproc/ecpg.tokens index b55138a3167..68ba925efe4 100644 --- a/src/interfaces/ecpg/preproc/ecpg.tokens +++ b/src/interfaces/ecpg/preproc/ecpg.tokens @@ -12,7 +12,7 @@ SQL_LONG SQL_NULLABLE SQL_OCTET_LENGTH SQL_OPEN SQL_OUTPUT SQL_REFERENCE SQL_RETURNED_LENGTH SQL_RETURNED_OCTET_LENGTH SQL_SCALE - SQL_SECTION SQL_SHORT SQL_SIGNED SQL_SQL SQL_SQLERROR + SQL_SECTION SQL_SHORT SQL_SIGNED SQL_SQLERROR SQL_SQLPRINT SQL_SQLWARNING SQL_START SQL_STOP SQL_STRUCT SQL_UNSIGNED SQL_VAR SQL_WHENEVER diff --git a/src/interfaces/ecpg/preproc/ecpg.trailer b/src/interfaces/ecpg/preproc/ecpg.trailer index 7e95b8da5eb..8cc3844b734 100644 --- a/src/interfaces/ecpg/preproc/ecpg.trailer +++ b/src/interfaces/ecpg/preproc/ecpg.trailer @@ -1005,7 +1005,7 @@ ecpg_using: USING using_list { $$ = EMPTY; } | using_descriptor { $$ = $1; } ; -using_descriptor: USING SQL_SQL SQL_DESCRIPTOR quoted_ident_stringvar +using_descriptor: USING SQL_P SQL_DESCRIPTOR quoted_ident_stringvar { add_variable_to_head(&argsinsert, descriptor_variable($4,0), &no_indicator); $$ = EMPTY; @@ -1017,7 +1017,7 @@ using_descriptor: USING SQL_SQL SQL_DESCRIPTOR quoted_ident_stringvar } ; -into_descriptor: INTO SQL_SQL SQL_DESCRIPTOR quoted_ident_stringvar +into_descriptor: INTO SQL_P SQL_DESCRIPTOR quoted_ident_stringvar { add_variable_to_head(&argsresult, descriptor_variable($4,1), &no_indicator); $$ = EMPTY; @@ -1494,7 +1494,6 @@ ECPGKeywords_vanames: SQL_BREAK { $$ = mm_strdup("break"); } | SQL_RETURNED_OCTET_LENGTH { $$ = mm_strdup("returned_octet_length"); } | SQL_SCALE { $$ = mm_strdup("scale"); } | SQL_SECTION { $$ = mm_strdup("section"); } - | SQL_SQL { $$ = mm_strdup("sql"); } | SQL_SQLERROR { $$ = mm_strdup("sqlerror"); } | SQL_SQLPRINT { $$ = mm_strdup("sqlprint"); } | SQL_SQLWARNING { $$ = mm_strdup("sqlwarning"); } diff --git a/src/interfaces/ecpg/preproc/ecpg_keywords.c b/src/interfaces/ecpg/preproc/ecpg_keywords.c index 7f7041ffd8d..3b52b8f3a29 100644 --- a/src/interfaces/ecpg/preproc/ecpg_keywords.c +++ b/src/interfaces/ecpg/preproc/ecpg_keywords.c @@ -63,8 +63,6 @@ static const ScanKeyword ECPGScanKeywords[] = { {"section", SQL_SECTION, 0}, {"short", SQL_SHORT, 0}, {"signed", SQL_SIGNED, 0}, - {"sql", SQL_SQL, 0}, /* strange thing, used for into sql descriptor - * MYDESC; */ {"sqlerror", SQL_SQLERROR, 0}, {"sqlprint", SQL_SQLPRINT, 0}, {"sqlwarning", SQL_SQLWARNING, 0}, |
