mirror of
				https://github.com/sqlite/sqlite.git
				synced 2025-10-31 18:11:01 +03:00 
			
		
		
		
	Wildcards with the same name map into the same variable number. New
api sqlite3_bind_parameter_index() added to map wildcard names into wildcard index numbers. Support for "?nnn" wildcards. (CVS 1945) FossilOrigin-Name: 435b3f301fbb6953adc974c7f03589b06e9114c3
This commit is contained in:
		| @@ -11,7 +11,7 @@ | ||||
| ************************************************************************* | ||||
| ** Internal interface definitions for SQLite. | ||||
| ** | ||||
| ** @(#) $Id: sqliteInt.h,v 1.319 2004/09/06 17:24:13 drh Exp $ | ||||
| ** @(#) $Id: sqliteInt.h,v 1.320 2004/09/07 16:19:54 drh Exp $ | ||||
| */ | ||||
| #ifndef _SQLITEINT_H_ | ||||
| #define _SQLITEINT_H_ | ||||
| @@ -67,6 +67,11 @@ | ||||
| */ | ||||
| #define MAX_ATTACHED 10 | ||||
|  | ||||
| /* | ||||
| ** The maximum value of a ?nnn wildcard that the parser will accept. | ||||
| */ | ||||
| #define SQLITE_MAX_VARIABLE_NUMBER 999 | ||||
|  | ||||
| /* | ||||
| ** When building SQLite for embedded systems where memory is scarce, | ||||
| ** you can define one or more of the following macros to omit extra | ||||
| @@ -990,6 +995,9 @@ struct Parse { | ||||
|   int nSet;            /* Number of sets used so far */ | ||||
|   int nAgg;            /* Number of aggregate expressions */ | ||||
|   int nVar;            /* Number of '?' variables seen in the SQL so far */ | ||||
|   int nVarExpr;        /* Number of used slots in apVarExpr[] */ | ||||
|   int nVarExprAlloc;   /* Number of allocated slots in apVarExpr[] */ | ||||
|   Expr **apVarExpr;    /* Pointers to :aaa and $aaaa wildcard expressions */ | ||||
|   AggExpr *aAgg;       /* An array of aggregate expressions */ | ||||
|   const char *zAuthContext; /* The 6th parameter to db->xAuth callbacks */ | ||||
|   Trigger *pNewTrigger;     /* Trigger under construct by a CREATE TRIGGER */ | ||||
| @@ -1209,6 +1217,7 @@ Expr *sqlite3Expr(int, Expr*, Expr*, Token*); | ||||
| Expr *sqlite3ExprAnd(Expr*, Expr*); | ||||
| void sqlite3ExprSpan(Expr*,Token*,Token*); | ||||
| Expr *sqlite3ExprFunction(ExprList*, Token*); | ||||
| void sqlite3ExprAssignVarNumber(Parse*, Expr*); | ||||
| void sqlite3ExprDelete(Expr*); | ||||
| ExprList *sqlite3ExprListAppend(ExprList*,Expr*,Token*); | ||||
| void sqlite3ExprListDelete(ExprList*); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user