- C Add\sfurther\stests\sand\srelated\sfixes\sfor\sGLOB/REGEXP/LIKE\ssupport\sin\svirtual\stables.
- D 2015-11-24T17:39:01.810
-C Remove\sfrom\sos_unix.c\spointless\slogic\sthat\stries\sto\sprevent\sa\srecurrence\sof\na\swarning\smessage\sthat\scan\sonly\soccur\sonce.
-D 2015-11-24T16:40:23.118
++C Merge\slatest\strunk\schanges\swith\sthis\sbranch.
++D 2015-11-24T17:44:26.959
F Makefile.in d828db6afa6c1fa060d01e33e4674408df1942a1
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
F Makefile.msc e928e68168df69b353300ac87c10105206653a03
F src/test5.c 5a34feec76d9b3a86aab30fd4f6cc9c48cbab4c1
F src/test6.c 41cacf3b0dd180823919bf9e1fbab287c9266723
F src/test7.c 9c89a4f1ed6bb13af0ed805b8d782bd83fcd57e3
- F src/test8.c 59d91e1ff19aa91603aa409d4f41568cab1b9a2d
-F src/test8.c 697c9c84a13e08c72ea95a3637d4374caf54fc93
++F src/test8.c 85b8c6a0309130300d560e2334ee71e70391785e
F src/test9.c bea1e8cf52aa93695487badedd6e1886c321ea60
F src/test_async.c 21e11293a2f72080eda70e1124e9102044531cd8
F src/test_autoext.c dea8a01a7153b9adc97bd26161e4226329546e12
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
- P 277a5b4027d4c2caba8143228a4f7d6df899dbb4
- R f59356e8fc475908365127ad504d9518
-P 32e138796c66c88e8cbb77aa3a4282a38d1f959a
-R 39dda72890996a1a2961e4723fcfeb24
-U drh
-Z 6e0fb81bf9792119f74030230681d485
++P c5e9fd0dc92a07db3d3b5f5c5ad8fb63b3425c2b 20256177072caa4f2b4114038ad1c8f6e26bc562
++R f66db3dfd01f74a8efe805dce920d093
+U dan
- Z 673386578c6b1eaa8b17502c533df301
++Z 1605220e9da94a8d162b093db7a72a24
case SQLITE_INDEX_CONSTRAINT_GE:
zOp = ">="; break;
case SQLITE_INDEX_CONSTRAINT_MATCH:
+ /* Purposely translate the MATCH operator into a LIKE, which
+ ** will be used by the next block of code to construct a new
+ ** query. It should also be noted here that the next block
+ ** of code requires the first letter of this operator to be
+ ** in upper-case to trigger the special MATCH handling (i.e.
+ ** wrapping the bound parameter with literal '%'s).
+ */
zOp = "LIKE"; break;
+ case SQLITE_INDEX_CONSTRAINT_LIKE:
+ zOp = "like"; break;
+ case SQLITE_INDEX_CONSTRAINT_GLOB:
+ zOp = "glob"; break;
+ case SQLITE_INDEX_CONSTRAINT_REGEXP:
+ zOp = "regexp"; break;
}
if( zOp[0]=='L' ){
zNew = sqlite3_mprintf(" %s %s LIKE (SELECT '%%'||?||'%%')",