Re: Moving from PHP to Java: A result was returned when none was expected.

From: Jan de Visser <jan(at)de-visser(dot)net>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Cc: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>, Alexander Farber <alexander(dot)farber(at)gmail(dot)com>
Subject: Re: Moving from PHP to Java: A result was returned when none was expected.
Date: 2016-06-15 15:24:25
Message-ID: 1481634.LjI3kEln4R@coyote
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wednesday, June 15, 2016 10:43:13 AM EDT David G. Johnston wrote:
> On Wed, Jun 15, 2016 at 10:30 AM, Jan de Visser <jan(at)de-visser(dot)net> wrote:
> > Point is that you're doing a SELECT. A SELECT returns a result, which can
> > be
> > empty. I would use executeQuery and ignore the result.
> >
> > There is a bit of a mismatch between the JDBC stored procedure model and
> > the
> > pgsql function model, because pgsql doesn't have true stored procedures.
>
> Can you point to docs, JDBC and/or PG, that describe what it means to
> "RETURN void"?
>
> At a high-level SQL returns SETs and the empty set is a valid SET. I take
> it from your comment that JDBC considers the empty set "a result", whose
> record count is zero.

Hrm...

jan=# create or replace function foo() returns void as $$
begin
raise notice 'foo() called';
end
$$ language plpgsql;
CREATE FUNCTION
jan=# select foo();
NOTICE: foo() called
foo
-----

(1 row)

So there's a row. Don't know what that row would contain, and how it would map
to JDBC.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Durgamahesh Manne 2016-06-15 15:27:44 Fwd: regarding schema only migration from sqlserver to postgres with runmtk.sh
Previous Message Jan de Visser 2016-06-15 14:57:49 Re: Moving from PHP to Java: A result was returned when none was expected.