Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2015-05-29 15:19:27 +0300
committerRobin Appelman <icewind@owncloud.com>2015-11-10 15:09:54 +0300
commite3c52022a8aaf4ec2d1ec103edebae3e62b3d588 (patch)
tree492c267ebbd9b7e3aca7d19c2e58395aac21251b /lib
parent6b53de48dc587988dca75555cdf221b2a3a0705a (diff)
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);