Update of /cvsroot/monetdb/sql/src/server
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv24613/src/server

Modified Files:
        rel_select.mx sql_parser.mx sql_select.mx 
Log Message:
propagated changes of Sunday Aug 12 2007
from the SQL_2-18 branch to the development trunk



Index: rel_select.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/rel_select.mx,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -d -r1.51 -r1.52
--- rel_select.mx       29 Jun 2007 11:28:57 -0000      1.51
+++ rel_select.mx       13 Aug 2007 09:27:30 -0000      1.52
@@ -3398,14 +3398,9 @@
        }
                break;
        case SQL_PARAMETER:{
-               char n[BUFSIZ];
-
                if (sql->mode != m_prepare) 
                        return sql_error(sql, 02, "SELECT: parameters ('?') not 
allowed in normal queries, use PREPARE");
-               snprintf(n, BUFSIZ, "A%d", 
-                       (sql->params)?list_length(sql->params):0);
-               sql_add_param(sql, n, NULL);
-               return exp_param(n, NULL);
+               return exp_param(se->data.sval, NULL);
        }
        case SQL_ATOM:{
                AtomNode *an = (AtomNode *) se;

Index: sql_parser.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/sql_parser.mx,v
retrieving revision 1.248
retrieving revision 1.249
diff -u -d -r1.248 -r1.249
--- sql_parser.mx       29 Jun 2007 11:28:59 -0000      1.248
+++ sql_parser.mx       13 Aug 2007 09:27:30 -0000      1.249
@@ -3142,7 +3142,14 @@
  |  string_funcs
  |  case_exp
  |  cast_exp
- |  '?'                        { $$ = _symbol_create( SQL_PARAMETER, NULL ); }
+ |  '?'                        
+       { mvc *m = (mvc*)parm;
+         int nr = (m->params)?list_length(m->params):0, l = 2 + ((nr+8)>>3);
+         char *n = sa_alloc(m->sa, l);
+
+         snprintf(n, l, "A%d", nr);
+         sql_add_param(m, n, NULL);
+         $$ = _symbol_create( SQL_PARAMETER, n ); }
  ;
 
 /*

Index: sql_select.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/sql_select.mx,v
retrieving revision 1.195
retrieving revision 1.196
diff -u -d -r1.195 -r1.196
--- sql_select.mx       3 Jul 2007 07:16:25 -0000       1.195
+++ sql_select.mx       13 Aug 2007 09:27:31 -0000      1.196
@@ -1725,14 +1725,9 @@
        }
                break;
        case SQL_PARAMETER:{
-               char n[BUFSIZ];
-
                if (sql->mode != m_prepare) 
                        return sql_error(sql, 02, "SELECT: parameters ('?') not 
allowed in normal queries, use PREPARE");
-               snprintf(n, BUFSIZ, "A%d", 
-                       (sql->params)?list_length(sql->params):0);
-               sql_add_param(sql, n, NULL);
-               return stmt_var(_strdup(n), NULL, 0, 0);
+               return stmt_var(_strdup(se->data.sval), NULL, 0, 0);
        }
        case SQL_NULL:
                return stmt_atom(atom_general(sql_bind_localtype("str"), NULL, 
0));


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to