From: Sartor Date: Wed, 7 Mar 2018 10:32:53 +0000 (+0200) Subject: PgSQL search operator "SQL" added X-Git-Tag: v4.6.3~30 X-Git-Url: https://git.joonet.de/?a=commitdiff_plain;h=af7ac6f06af0d7912df9f640852adf95487aef20;p=adminer.git PgSQL search operator "SQL" added --- diff --git a/adminer/drivers/pgsql.inc.php b/adminer/drivers/pgsql.inc.php index 5b4085ed..db962e02 100644 --- a/adminer/drivers/pgsql.inc.php +++ b/adminer/drivers/pgsql.inc.php @@ -217,7 +217,7 @@ if (isset($_GET["pgsql"])) { function convertSearch($idf, $val, $field) { return (preg_match('~char|text' . (!preg_match('~LIKE~', $val["op"]) ? '|date|time(stamp)?' . (is_numeric($val["val"]) ? '|' . number_type() : '') : '') - . '~', $field["type"]) + . '~', $field["type"]) || $val["op"] == "SQL" ? $idf : "CAST($idf AS text)" ); @@ -845,7 +845,7 @@ AND typelem = 0" $structured_types[$key] = array_keys($val); } $unsigned = array(); - $operators = array("=", "<", ">", "<=", ">=", "!=", "~", "!~", "LIKE", "LIKE %%", "ILIKE", "ILIKE %%", "IN", "IS NULL", "NOT LIKE", "NOT IN", "IS NOT NULL"); // no "SQL" to avoid SQL injection + $operators = array("=", "<", ">", "<=", ">=", "!=", "~", "!~", "LIKE", "LIKE %%", "ILIKE", "ILIKE %%", "IN", "IS NULL", "NOT LIKE", "NOT IN", "IS NOT NULL", "SQL"); $functions = array("char_length", "lower", "round", "to_hex", "to_timestamp", "upper"); $grouping = array("avg", "count", "count distinct", "max", "min", "sum"); $edit_functions = array( diff --git a/changes.txt b/changes.txt index ec4227fc..a603fc79 100644 --- a/changes.txt +++ b/changes.txt @@ -6,6 +6,7 @@ Fix displaying info about non-alphabetical objects (bug #599) PDO: Support binary fields download MySQL: Use CONVERT() only when searching for non-ASCII (bug #603) PostgreSQL: Do not cast date/time searches to text +PostgreSQL: Add SQL operator to search Adminer 4.6.2 (released 2018-02-20): Semi-transparent border on table actions