|
|
|
@ -41,6 +41,8 @@ class OC_DB { |
|
|
|
|
const BACKEND_PDO=0; |
|
|
|
|
const BACKEND_MDB2=1; |
|
|
|
|
|
|
|
|
|
static private $preparedQueries = array(); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @var MDB2_Driver_Common |
|
|
|
|
*/ |
|
|
|
@ -121,6 +123,7 @@ class OC_DB { |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
self::$preparedQueries = array(); |
|
|
|
|
// The global data we need |
|
|
|
|
$name = OC_Config::getValue( "dbname", "owncloud" ); |
|
|
|
|
$host = OC_Config::getValue( "dbhost", "" ); |
|
|
|
@ -201,6 +204,7 @@ class OC_DB { |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
self::$preparedQueries = array(); |
|
|
|
|
// The global data we need |
|
|
|
|
$name = OC_Config::getValue( "dbname", "owncloud" ); |
|
|
|
|
$host = OC_Config::getValue( "dbhost", "" ); |
|
|
|
@ -321,7 +325,12 @@ class OC_DB { |
|
|
|
|
$query.=$limitsql; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if (isset(self::$preparedQueries[$query])) { |
|
|
|
|
return self::$preparedQueries[$query]; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
$rawQuery = $query; |
|
|
|
|
|
|
|
|
|
// Optimize the query |
|
|
|
|
$query = self::processQuery( $query ); |
|
|
|
@ -343,6 +352,9 @@ class OC_DB { |
|
|
|
|
} |
|
|
|
|
$result=new PDOStatementWrapper($result); |
|
|
|
|
} |
|
|
|
|
if (is_null($limit) || $limit == -1) { |
|
|
|
|
self::$preparedQueries[$rawQuery] = $result; |
|
|
|
|
} |
|
|
|
|
return $result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|