From: | "Carlsen, Len" <len(dot)carlsen(at)ubc(dot)ca> |
---|---|
To: | 'Tom Lane' <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "pgsql-bugs(at)lists(dot)postgresql(dot)org" <pgsql-bugs(at)lists(dot)postgresql(dot)org> |
Subject: | RE: BUG #15171: JDBC TIMESTAMP WITH TIME ZONE PSQLException When Using Substitution Parameter |
Date: | 2018-04-26 16:25:01 |
Message-ID: | E127AFCAB7F96F4F82436851BC261D3201570AEEA7@S-ITSV-MBX07P.ead.ubc.ca |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Hi Tom,
Thanks for your quick response. I'll give that a try.
Len
-----Original Message-----
From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Sent: Tuesday, April 24, 2018 4:22 PM
To: Carlsen, Len <len(dot)carlsen(at)ubc(dot)ca>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #15171: JDBC TIMESTAMP WITH TIME ZONE PSQLException When Using Substitution Parameter
=?utf-8?q?PG_Bug_reporting_form?= <noreply(at)postgresql(dot)org> writes:
> Executing this query works fine: 'SELECT TIMESTAMP WITH TIME ZONE
> '2018-04-17 12:00:00.0-07'"
> But executing query "SELECT TIMESTAMP WITH TIME ZONE ?" with a
> substitution parameter results in a PSQLException syntax error.
Yes. A parameter symbol is not a syntactic equivalent to a string literal; it's more nearly like a variable. You can't say "typename variable" either. You need to write it like a cast, ie "variable::typename", or "CAST(variable AS typename)" if you want to be pedantically standards-compliant. So what you want is "SELECT ?::TIMESTAMP WITH TIME ZONE".
(Allowing the non-orthogonal, non-extensible syntax "typename string-literal" was not one of the SQL committee's better decisions IMV. We're stuck with supporting it, but I'd suggest avoiding it in favor of cast-like notation, which works in a much wider variety of
cases.)
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2018-04-26 18:57:23 | Re: Fwd: [BUGS] pg_trgm word_similarity inconsistencies or bug |
Previous Message | Michael Meskes | 2018-04-26 16:20:43 | Re: BUG #15176: ecpg generation error |