From: | "Thomas O'Dowd" <tom(at)nooper(dot)com> |
---|---|
To: | "Dr(dot) Evil" <drevil(at)sidereal(dot)kz> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Does PG's JDBC support prepared statements at all? |
Date: | 2001-10-21 02:37:29 |
Message-ID: | 20011021113729.V7183@beast.uwillsee.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc pgsql-patches |
On Sat, Oct 20, 2001 at 11:14:22PM -0000, Dr. Evil wrote:
>
> There is a bunch of documentation for prepared statements in PG's
> JDBC, it seems that the only thing prepared statements do is throw
> exceptions.
>
> Here's some code I'm trying:
>
> String newvalue = "This is a new value";
> int accountnumber = 54;
> String qstring = "UPDATE foo SET message = '?' WHERE number = ?";
> PreparedStatement st = db.prepareStatement(qstring);
> st.setString(1, newvalue);
> st.setInt(2, accountnumber);
> st.execute();
> st.clearParameters();
> st.close();
>
> and I always get a Parameter index out of range error, which seems
> impossible. Any idea what's going on?
You shouldn't quote the ? for the string. By calling the setString()
method, it will add the quotes for you. So I guess what is happening is
that the preparedstatement parser ignores quoted question marks and just
finds 1 variable, when you call setstring on 1 it sets the number= part,
and then when you call setInt(2) you are getting the index out of range.
The proper qstring should be:
"UPDATE foo SET message = ? WHERE number = ?"
Cheers,
Tom.
--
Thomas O'Dowd. - Nooping - http://nooper.com
tom(at)nooper(dot)com - Testing - http://nooper.co.jp/labs
From | Date | Subject | |
---|---|---|---|
Next Message | Gunnar Rønning | 2001-10-21 03:24:33 | Re: [PATCHES] Ant configuration |
Previous Message | Dr. Evil | 2001-10-20 23:14:22 | Does PG's JDBC support prepared statements at all? |
From | Date | Subject | |
---|---|---|---|
Next Message | Gunnar Rønning | 2001-10-21 03:24:33 | Re: [PATCHES] Ant configuration |
Previous Message | Dr. Evil | 2001-10-20 23:14:22 | Does PG's JDBC support prepared statements at all? |