From b83da41739aeaa9090244de47a75ebb49b63fcfe Mon Sep 17 00:00:00 2001 From: Jakub Vrana Date: Fri, 15 Aug 2025 23:36:54 +0200 Subject: [PATCH] PostgreSQL: Fix calling functions with name-less parameters --- CHANGELOG.md | 1 + adminer/drivers/pgsql.inc.php | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a55893d..0cf849a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ - PostgreSQL: Allow comparing json columns (bug #1107) - PostgreSQL: Shorten values in hstore columns - PostgreSQL: Quote edit value with interval operator +- PostgreSQL: Fix calling functions with name-less parameters - PostgreSQL 11-: Avoid duplicate oid in table status (bug #1089) - Elasticsearch: Support dropping aliases - Plugins: Methods afterConnect(), processList() and killProcess() diff --git a/adminer/drivers/pgsql.inc.php b/adminer/drivers/pgsql.inc.php index e059efcf..73f70eaf 100644 --- a/adminer/drivers/pgsql.inc.php +++ b/adminer/drivers/pgsql.inc.php @@ -822,7 +822,7 @@ FROM information_schema.routines WHERE routine_schema = current_schema() AND specific_name = ' . q($name)); $return = idx($rows, 0, array()); $return["returns"] = array("type" => $return["type_udt_name"]); - $return["fields"] = get_rows('SELECT parameter_name AS field, data_type AS type, character_maximum_length AS length, parameter_mode AS inout + $return["fields"] = get_rows('SELECT COALESCE(parameter_name, ordinal_position::text) AS field, data_type AS type, character_maximum_length AS length, parameter_mode AS inout FROM information_schema.parameters WHERE specific_schema = current_schema() AND specific_name = ' . q($name) . ' ORDER BY ordinal_position');