function DatabaseConnection_pgsql::prepareQuery
Overrides DatabaseConnection::prepareQuery
1 call to DatabaseConnection_pgsql::prepareQuery()
- DatabaseConnection_pgsql::query in includes/
database/ pgsql/ database.inc - Executes a query string against the database.
File
-
includes/
database/ pgsql/ database.inc, line 77
Class
Code
public function prepareQuery($query) {
// mapConditionOperator converts LIKE operations to ILIKE for consistency
// with MySQL. However, Postgres does not support ILIKE on bytea (blobs)
// fields.
// To make the ILIKE operator work, we type-cast bytea fields into text.
// @todo This workaround only affects bytea fields, but the involved field
// types involved in the query are unknown, so there is no way to
// conditionally execute this for affected queries only.
return parent::prepareQuery(preg_replace('/ ([^ ]+) +(I*LIKE|NOT +I*LIKE) /i', ' ${1}::text ${2} ', $query));
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.