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.
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. |