Re: Calling functions with table-based-type parametars

From: Kris Jurka <books(at)ejurka(dot)com>
To: Mario Splivalo <mario(dot)splivalo(at)mobart(dot)hr>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Calling functions with table-based-type parametars
Date: 2007-02-26 16:53:35
Message-ID: Pine.BSO.4.64.0702261150440.21753@leary.csoft.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

On Mon, 26 Feb 2007, Mario Splivalo wrote:

>> Why not conn.prepareCall("{call f1(ROW(?, ?)}") or
>> conn.prepareStatement("SELECT f1(ROW(?, ?))");
>
> When I try it like above (using conn.prepaleCall), i get this:
>
> 2007-02-26 16:58:19.004 CET [9592] <jura> SELECTERROR: function
> f1(record) does not exist
> 2007-02-26 16:58:19.004 CET [9592] <jura> SELECTHINT: No function
> matches the given name and argument types. You may need to add explicit
> type casts.

This is saying you need to write it with a cast from the row to the table
type:

conn.prepareCall("{call f1(ROW(?, ?)::t1)}")

Kris Jurka

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Heikki Linnakangas 2007-02-26 17:02:42 Re: bug with PGXADataSource in JNDI
Previous Message Kris Jurka 2007-02-26 16:45:24 Re: does prepareThreshold work? forced to use old driver