From: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
---|---|
To: | Chuck Davis <cjgunzel(at)gmail(dot)com> |
Cc: | "pgsql-jdbc(at)postgresql(dot)org" <pgsql-jdbc(at)postgresql(dot)org> |
Subject: | Re: JDBC |
Date: | 2018-06-10 20:44:25 |
Message-ID: | CAKFQuwY_7EdueER=eLfE9HWmw9hLi+bDM3SqCf2NLR5Dugk2Tw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
On Sunday, June 10, 2018, Chuck Davis <cjgunzel(at)gmail(dot)com> wrote:
>
> try {
> result = stat.execute("select exists (select 1 from
> information_schema.tables where table_name = 'entities')");
> System.out.println("the checkEntity returned a result of "
> + result);
> } catch (SQLException ex) {
> Logger.getLogger(ClientConstants.class.getName(
> )).log(Level.SEVERE,
> null, ex);
> result = false;
> return result;
> }
Your query is putting "false" into cell (0,0) of a ResultSet. You are
failing to even look at the resultset to see if it holds a true or false.
The query should never fail since you aren't using the table name directly
but are checking for it as a value in another table that always exists. The
inner query returns zero records when the table doesn't exist and the
EXISTS construct converts that to false.
David J.
From | Date | Subject | |
---|---|---|---|
Next Message | Chuck Davis | 2018-06-10 23:05:37 | Re: JDBC |
Previous Message | Tom Lane | 2018-06-10 20:40:46 | Re: JDBC |