Re: CALL and named parameters

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Dominique Devienne <ddevienne(at)gmail(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: CALL and named parameters
Date: 2025-08-06 18:10:55
Message-ID: 94f7cf0f-ee15-4e6a-b5eb-f70bbbaa520a@aklaver.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 8/6/25 10:48, Dominique Devienne wrote:
> (sorry, this is a rant...).
>
> Was getting an error calling a procedure
>
> ERROR: procedure ... does not exist
> HINT: No procedure matches the given name and argument types. You
> might need to add explicit type casts.
>
> I verify USAGE on the SCHEMA of the proc. OK.
> I verify EXECUTE on the FUNCTION. OK.
> I verify the names of the parameters, in my CALL with named arguments. OK.
>
> Turns out, thanks to ChatGPT for clueing me in, CALL does NOT support
> named parameters. And it's about the least helpful error message
> PostgreSQL could have provided IMO. I'd expect something much better
> in this specific case, FWIW.

I am not following as:

CREATE OR REPLACE PROCEDURE public.call_test(IN a integer, IN b integer)
LANGUAGE plpgsql
AS $procedure$
BEGIN
RAISE NOTICE 'c = %', a + b;
END;
$procedure$

call call_test (a=>1, b=>2);
NOTICE: c = 3
CALL

You will need to provide more information on your specific case.

>
> That's two unhelpful error messages in a short time :).
>
> Thanks, and again sorry for the rant. Wasted time on this. --DD
>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Nathan Bossart 2025-08-06 18:14:12 Re: analyze-in-stages post upgrade questions
Previous Message Pavel Stehule 2025-08-06 18:08:36 Re: CALL and named parameters