Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #8875 from rldhont/bugfix-oracle-compile-expressio…
…n-like-34

Add ESCAPE when compiling LIKE for oracle
  • Loading branch information
m-kuhn committed Feb 6, 2019
2 parents 57391d8 + d9bf6eb commit 92823d0
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/providers/oracle/qgsoracleexpressioncompiler.cpp
Expand Up @@ -58,11 +58,11 @@ QgsSqlExpressionCompiler::Result QgsOracleExpressionCompiler::compileNode( const
return Complete;

case QgsExpressionNodeBinaryOperator::boILike:
result = QStringLiteral( "lower(%1) LIKE lower(%2)" ).arg( op1, op2 );
result = QStringLiteral( "lower(%1) LIKE lower(%2) ESCAPE '\\'" ).arg( op1, op2 );
return Complete;

case QgsExpressionNodeBinaryOperator::boNotILike:
result = QStringLiteral( "NOT lower(%1) LIKE lower(%2)" ).arg( op1, op2 );
result = QStringLiteral( "NOT lower(%1) LIKE lower(%2) ESCAPE '\\'" ).arg( op1, op2 );
return Complete;

case QgsExpressionNodeBinaryOperator::boIntDiv:
Expand Down
2 changes: 2 additions & 0 deletions tests/src/python/featuresourcetestbase.py
Expand Up @@ -155,6 +155,8 @@ def runGetFeatureTests(self, source):
self.assert_query(source, '(name = \'Apple\') is not null', [1, 2, 3, 4])
self.assert_query(source, 'name LIKE \'Apple\'', [2])
self.assert_query(source, 'name LIKE \'aPple\'', [])
self.assert_query(source, 'name LIKE \'Ap_le\'', [2])
self.assert_query(source, 'name LIKE \'Ap\\_le\'', [])
self.assert_query(source, 'name ILIKE \'aPple\'', [2])
self.assert_query(source, 'name ILIKE \'%pp%\'', [2])
self.assert_query(source, 'cnt > 0', [1, 2, 3, 4])
Expand Down
2 changes: 2 additions & 0 deletions tests/src/python/test_provider_shapefile.py
Expand Up @@ -203,6 +203,8 @@ def partiallyCompiledFilters(self):
'name = \'apple\'',
'name LIKE \'Apple\'',
'name LIKE \'aPple\'',
'name LIKE \'Ap_le\'',
'name LIKE \'Ap\\_le\'',
'"name"="name2"'])

def testRepack(self):
Expand Down

0 comments on commit 92823d0

Please sign in to comment.