Re: ERROR: no value found for parameter 1 with JDBC and Explain Analyze - Mailing list pgsql-performance

From Tom Lane
Subject Re: ERROR: no value found for parameter 1 with JDBC and Explain Analyze
Date
Msg-id 13280.1132358780@sss.pgh.pa.us
Whole thread Raw
In response to ERROR: no value found for parameter 1 with JDBC and Explain Analyze  ("Virag Saksena" <v_saks@hotmail.com>)
List pgsql-performance
"Virag Saksena" <v_saks@hotmail.com> writes:
> ERROR: no value found for parameter 1

> Here is sample code which causes this exception ...
>   pst=prodconn.prepareStatement("explain analyze select count(*) from
> jam_heaprel r where heap_id = ? and parentaddr = ?");

I don't think EXPLAIN can take parameters (most of the "utility"
statements don't take parameters).

The usual workaround is to use PREPARE:

    PREPARE foo(paramtype,paramtype) AS SELECT ...;
    EXPLAIN EXECUTE foo(x,y);

This will generate the same parameterized plan as you'd get from the
other way, so it's a reasonable approximation to the behavior with
JDBC parameters.

            regards, tom lane

pgsql-performance by date:

Previous
From: "Luke Lonergan"
Date:
Subject: Re: Hardware/OS recommendations for large databases (
Next
From: Mark Kirkwood
Date:
Subject: Re: Hardware/OS recommendations for large databases (