summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2015-05-29 14:19:27 +0200
committerRobin Appelman <icewind@owncloud.com>2015-11-05 16:29:35 +0100
commitb05e1b6ed3a1a72bc1ebe9d41086051cf85c04d0 (patch)
tree4f11cecf2ab2573cc1841735378e60c64ee2b4ee /lib
parentb394fe87092f9e5355d4ee7502fed437f0266b1f (diff)
downloadnextcloud-server-b05e1b6ed3a1a72bc1ebe9d41086051cf85c04d0.tar.gz
nextcloud-server-b05e1b6ed3a1a72bc1ebe9d41086051cf85c04d0.zip
define escape character for like statements on oracle
Diffstat (limited to 'lib')
-rw-r--r--lib/private/db/adapteroci8.php1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/private/db/adapteroci8.php b/lib/private/db/adapteroci8.php
index 15ec5a0677f..6e7857e6620 100644
--- a/lib/private/db/adapteroci8.php
+++ b/lib/private/db/adapteroci8.php
@@ -36,6 +36,7 @@ class AdapterOCI8 extends Adapter {
const UNIX_TIMESTAMP_REPLACEMENT = "(cast(sys_extract_utc(systimestamp) as date) - date'1970-01-01') * 86400";
public function fixupStatement($statement) {
+ $statement = preg_replace('( LIKE \?)', '$0 ESCAPE \'\\\'', $statement);
$statement = preg_replace('/`(\w+)` ILIKE \?/', 'REGEXP_LIKE(`$1`, \'^\' || REPLACE(?, \'%\', \'.*\') || \'$\', \'i\')', $statement);
$statement = str_replace('`', '"', $statement);
$statement = str_ireplace('NOW()', 'CURRENT_TIMESTAMP', $statement);