aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/ChangeLog5
-rw-r--r--src/interfaces/ecpg/lib/execute.c8
-rw-r--r--src/interfaces/ecpg/preproc/preproc.y6
3 files changed, 14 insertions, 5 deletions
diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog
index f6055beb289..18708efae16 100644
--- a/src/interfaces/ecpg/ChangeLog
+++ b/src/interfaces/ecpg/ChangeLog
@@ -1096,5 +1096,10 @@ Wed Sep 19 15:57:49 CEST 2001
- Synced pgc.l with scan.l.
- Synced keyword.c.
- Include the remaining patches by Christof Petig <christof.petig@wtal.de>.
+
+Tue Sep 25 20:10:03 CEST 2001
+
+ - Synced preproc.y with gram.y.
+ - Changed locale handling.
- Set ecpg version to 2.9.0.
- Set library version to 3.3.0.
diff --git a/src/interfaces/ecpg/lib/execute.c b/src/interfaces/ecpg/lib/execute.c
index 30d6645c51f..40bcfc0c549 100644
--- a/src/interfaces/ecpg/lib/execute.c
+++ b/src/interfaces/ecpg/lib/execute.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/execute.c,v 1.23 2001/09/19 14:09:32 meskes Exp $ */
+/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/lib/Attic/execute.c,v 1.24 2001/09/25 18:37:17 meskes Exp $ */
/*
* The aim is to get a simpler inteface to the database routines.
@@ -1007,11 +1007,11 @@ ECPGdo(int lineno, const char *connection_name, char *query,...)
struct statement *stmt;
struct connection *con = get_connection(connection_name);
bool status = true;
- char *locale = setlocale(LC_NUMERIC, NULL);
+ char *locale;
/* Make sure we do NOT honor the locale for numeric input/output */
- /* since the database wants teh standard decimal point */
- setlocale(LC_NUMERIC, "C");
+ /* since the database wants the standard decimal point */
+ locale = setlocale(LC_NUMERIC, "C");
if (!ecpg_init(con, connection_name, lineno))
{
diff --git a/src/interfaces/ecpg/preproc/preproc.y b/src/interfaces/ecpg/preproc/preproc.y
index b4939adabf2..31a1cb42d4d 100644
--- a/src/interfaces/ecpg/preproc/preproc.y
+++ b/src/interfaces/ecpg/preproc/preproc.y
@@ -2333,6 +2333,10 @@ ExplainStmt: EXPLAIN opt_verbose OptimizableStmt
{
$$ = cat_str(3, make_str("explain"), $2, $3);
}
+ | EXPLAIN analyze_keyword opt_verbose OptimizableStmt
+ {
+ $$ = cat_str(4, make_str("explain"), $2, $3, $4);
+ }
;
@@ -2664,7 +2668,7 @@ OptUseOp: USING all_Op { $$ = cat2_str(make_str("using"), $2); }
| /*EMPTY*/ { $$ = EMPTY; }
;
-select_limit: LIMIT select_limit_value ',' select_offset_value
+select_limit: LIMIT select_offset_value ',' select_limit_value
{ $$ = cat_str(4, make_str("limit"), $2, make_str(","), $4); }
| LIMIT select_limit_value OFFSET select_offset_value
{ $$ = cat_str(4, make_str("limit"), $2, make_str("offset"), $4); }