Обсуждение: Using PreparedStatement to call a function
HI all.
I have a function called:
dbcmp(
t varchar,
p varchar[],
c varchar[],
n INTEGER
) RETURNS SETOF dbcmp_t
...
Today, I call my function like this:
String sql = "select * from dbcmp('" + t + "','" + p + "','" + "'," + n + ")";
Statement stmt = con.createStatement(sql);
ResultSet rs = stmt.executeQuery();
...
I want to transform my code to use PreparedStatement like this:
String sql = "select * from dbcmp(?, ?, ?, ?)";
PreparedStatement ps = con.preparedStatement(sql);
ps.setString(1, t);
ps.setArray(2, p);
ps.setArray(3, c);
ps.setInt(4, n);
But I don´t know how to create an Array object to use the set.
Can anyone help me? :-)
Thanks in advance.
--
José Arthur Benetasso Villanova
ICQ 2138887
Jose,
Check the archives there are a few,
Basically you have to create a class which implements the Array
interface. Most of it can be unimplemented, except for toString which
will have to return
"{string1, string2}"
and
getBaseTypeName()
which will have to return "varchar" in the case of varchar[]
Dave
On 14-Jun-06, at 3:03 PM, José Arthur Benetasso Villanova wrote:
> HI all.
>
> I have a function called:
>
> dbcmp(
> t varchar,
> p varchar[],
> c varchar[],
> n INTEGER
> ) RETURNS SETOF dbcmp_t
> ...
>
>
> Today, I call my function like this:
>
> String sql = "select * from dbcmp('" + t + "','" + p + "','" + "',"
> + n + ")";
> Statement stmt = con.createStatement(sql);
> ResultSet rs = stmt.executeQuery();
> ...
>
> I want to transform my code to use PreparedStatement like this:
>
> String sql = "select * from dbcmp(?, ?, ?, ?)";
> PreparedStatement ps = con.preparedStatement(sql);
> ps.setString(1, t);
> ps.setArray(2, p);
> ps.setArray(3, c);
> ps.setInt(4, n);
>
> But I don´t know how to create an Array object to use the set.
>
> Can anyone help me? :-)
>
> Thanks in advance.
>
> --
> José Arthur Benetasso Villanova
> ICQ 2138887
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
> http://archives.postgresql.org
>
hi,
wht is the error code returned in case the database itself does not exist.
i have the link of error codes, but i am not sure which error code will mean that.
thanks
regards
Surabhi Ahuja