Author: ehu
Date: Mon Sep 6 13:02:14 2010
New Revision: 993015
URL: http://svn.apache.org/viewvc?rev=993015&view=rev
Log:
Add 'n' (no binding) binding type to svn_sqlite__bindf() to allow
delayed binding of a small subset of columns.
* subversion/include/private/svn_sqlite.h
* subversion/libsvn_subr/sqlite.c
(svn_sqlite__bindf): Add 'n' format specifier for skipped columns.
Modified:
subversion/trunk/subversion/include/private/svn_sqlite.h
subversion/trunk/subversion/libsvn_subr/sqlite.c
Modified: subversion/trunk/subversion/include/private/svn_sqlite.h
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/include/private/svn_sqlite.h?rev=993015&r1=993014&r2=993015&view=diff
==============================================================================
--- subversion/trunk/subversion/include/private/svn_sqlite.h (original)
+++ subversion/trunk/subversion/include/private/svn_sqlite.h Mon Sep 6
13:02:14 2010
@@ -148,15 +148,16 @@ svn_sqlite__prepare(svn_sqlite__stmt_t *
/* Bind values to SQL parameters in STMT, according to FMT. FMT may contain:
- Spec Argument type Item type
- ---- ----------------- ---------
- i apr_int64_t Number
- s const char * String
- b const void * Blob data
- apr_size_t Blob length
- r svn_revnum_t Revision number
- t const svn_token_t * Token mapping table
- int value Token value
+ Spec Argument type Item type
+ ---- ----------------- ---------
+ n <none, absent> Column assignment skip
+ i apr_int64_t Number
+ s const char * String
+ b const void * Blob data
+ apr_size_t Blob length
+ r svn_revnum_t Revision number
+ t const svn_token_t * Token mapping table
+ int value Token value
Each character in FMT maps to one SQL parameter, and one or two function
parameters, in the order they appear.
@@ -200,7 +201,7 @@ svn_sqlite__bind_revnum(svn_sqlite__stmt
svn_revnum_t value);
/* Bind a set of properties to the given slot. If PROPS is NULL, then no
- binding will occur. PROPS will be stored as a serialized skel. */
+/ binding will occur. PROPS will be stored as a serialized skel. */
svn_error_t *
svn_sqlite__bind_properties(svn_sqlite__stmt_t *stmt,
int slot,
Modified: subversion/trunk/subversion/libsvn_subr/sqlite.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/sqlite.c?rev=993015&r1=993014&r2=993015&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/sqlite.c (original)
+++ subversion/trunk/subversion/libsvn_subr/sqlite.c Mon Sep 6 13:02:14 2010
@@ -284,6 +284,10 @@ vbindf(svn_sqlite__stmt_t *stmt, const c
SVN_ERR(svn_sqlite__bind_token(stmt, count, map, va_arg(ap, int)));
break;
+ case 'n':
+ /* Skip this column: no binding */
+ break;
+
default:
SVN_ERR_MALFUNCTION();
}