Обсуждение: IBATIS support for postgres cursors

Поиск
Список
Период
Сортировка

IBATIS support for postgres cursors

От
Дата:

Hi,

 

Can cursors be returned to IBATIS. If so how. This is what I have written.

 

      <parameterMap id=" getUsersParam" class="Map">

            <parameter property="results" jdbcType="REF" javaType="java.sql.ResultSet" mode="OUT" resultMap="allUsersResult"/>

            <parameter property="errors" jdbcType="VARCHAR" javaType="java.lang.String" mode="OUT"/>

      </parameterMap>

 

This does not work. Please help.

 

Regards,

Atul Goel

SENIOR DEVELOPER

 

Global DataPoint

Middlesex House, 34-42 Cleveland Street

London W1T 4LB, UK

T: +44 (0)20 7079 4827

M: +44 (0)7846765098

www.globaldatapoint.com

 

This e-mail is confidential and should not be used by anyone who is not the original intended recipient. Global DataPoint Limited does not accept liability for any statements made which are clearly the sender's own and not expressly made on behalf of Global DataPoint Limited. No contracts may be concluded on behalf of Global DataPoint Limited by means of e-mail communication. Global DataPoint Limited Registered in England and Wales with registered number 3739752 Registered Office Middlesex House, 34-42 Cleveland Street, London W1T 4LB

Re: IBATIS support for postgres cursors

От
Craig Ringer
Дата:
On 08/24/2010 12:11 AM, Atul.Goel@globaldatapoint.com wrote:
> Hi,
>
> Can cursors be returned to IBATIS. If so how. This is what I have written.
>
> <parameterMap id=/"/ /getUsersParam"/ class=/"Map"/>
>
> <parameter property=/"results"/ jdbcType=/"REF"/
> javaType=/"java.sql.ResultSet"/ mode=/"OUT"/ resultMap=/"allUsersResult"//>
>
> <parameter property=/"errors"/ jdbcType=/"VARCHAR"/
> javaType=/"java.lang.String"/ mode=/"OUT"//>
>
> </parameterMap>
>
> This does not work. Please help.

http://wiki.postgresql.org/wiki/Guide_to_reporting_problems

--
Craig Ringer

Re: IBATIS support for postgres cursors

От
Guy Rouillier
Дата:
On 8/23/2010 12:11 PM, Atul.Goel@globaldatapoint.com wrote:
> Hi,
>
> Can cursors be returned to IBATIS. If so how. This is what I have written.
>
> <parameterMap id=/"/ /getUsersParam"/ class=/"Map"/>
>
> <parameter property=/"results"/ jdbcType=/"REF"/
> javaType=/"java.sql.ResultSet"/ mode=/"OUT"/ resultMap=/"allUsersResult"//>
>
> <parameter property=/"errors"/ jdbcType=/"VARCHAR"/
> javaType=/"java.lang.String"/ mode=/"OUT"//>
>
> </parameterMap>
>
> This does not work. Please help.

There is a dedicated mailing list for MyBatis (renamed from iBATIS) over
at http://www.mybatis.org.  This question would probably be better
addressed there.  I use both PG and MyBatis so I saw your question.  REF
is not an acceptable MyBatis jdbcType.  I'm trying with type OTHER as
documented here:

http://jdbc.postgresql.org/documentation/83/callproc.html#callproc-resultset-setof

But I'm running into an issue which I'll pursue on the MyBatis mailing
list.  Note that with the current refcursor implementation, there is no
advantage over returning SETOF from your function.  Both materialize the
entire result set before returning to the caller.  So, if you can't get
refcursor to work, I'd suggest switching to SETOF.

I'll get back to you when I find out why OTHER is not working.  Or else
you can join the MyBatis mailing list.

--
Guy Rouillier

Re: IBATIS support for postgres cursors

От
Дата:
Hi Guy,

Thanks for your reply. We  were able to work out with type OTHER.

Many thanks for support.

Regards,
Atul Goel

-----Original Message-----
From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Guy Rouillier
Sent: 25 August 2010 08:03
To: pgsql-general@postgresql.org
Subject: Re: [GENERAL] IBATIS support for postgres cursors

On 8/23/2010 12:11 PM, Atul.Goel@globaldatapoint.com wrote:
> Hi,
>
> Can cursors be returned to IBATIS. If so how. This is what I have written.
>
> <parameterMap id=/"/ /getUsersParam"/ class=/"Map"/>
>
> <parameter property=/"results"/ jdbcType=/"REF"/
> javaType=/"java.sql.ResultSet"/ mode=/"OUT"/ resultMap=/"allUsersResult"//>
>
> <parameter property=/"errors"/ jdbcType=/"VARCHAR"/
> javaType=/"java.lang.String"/ mode=/"OUT"//>
>
> </parameterMap>
>
> This does not work. Please help.

There is a dedicated mailing list for MyBatis (renamed from iBATIS) over
at http://www.mybatis.org.  This question would probably be better
addressed there.  I use both PG and MyBatis so I saw your question.  REF
is not an acceptable MyBatis jdbcType.  I'm trying with type OTHER as
documented here:

http://jdbc.postgresql.org/documentation/83/callproc.html#callproc-resultset-setof

But I'm running into an issue which I'll pursue on the MyBatis mailing
list.  Note that with the current refcursor implementation, there is no
advantage over returning SETOF from your function.  Both materialize the
entire result set before returning to the caller.  So, if you can't get
refcursor to work, I'd suggest switching to SETOF.

I'll get back to you when I find out why OTHER is not working.  Or else
you can join the MyBatis mailing list.

--
Guy Rouillier

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
This e-mail is confidential and should not be used by anyone who is not the original intended recipient. Global
DataPointLimited does not accept liability for any statements made which are clearly the sender's own and not expressly
madeon behalf of Global DataPoint Limited. No contracts may be concluded on behalf of Global DataPoint Limited by means
ofe-mail communication. Global DataPoint Limited Registered in England and Wales with registered number 3739752
RegisteredOffice Middlesex House, 34-42 Cleveland Street, London W1T 4LB 

Re: IBATIS support for postgres cursors

От
Guy Rouillier
Дата:
On 8/26/2010 5:27 AM, Atul.Goel@globaldatapoint.com wrote:
> Hi Guy,
>
> Thanks for your reply. We  were able to work out with type OTHER.

How did you get OTHER to work?  Did you define your own TypeHandler?

--
Guy Rouillier

Re: IBATIS support for postgres cursors

От
Дата:

> -----Original Message-----
> From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-
>
> How did you get OTHER to work?  Did you define your own TypeHandler?

That's the only change we had to make.  The Java code works as is.  We only changed the jdbcType from "ORACLECURSOR" TO
"OTHER"

        <parameterMap id="getUsersParam" class="Map">
                <parameter property="results" jdbcType="OTHER" javaType="java.sql.ResultSet" mode="OUT"
resultMap="allUsersResult"/>
                <parameter property="errors" jdbcType="VARCHAR" javaType="java.lang.String" mode="OUT"/>
        </parameterMap>

Thanks,


Zeeshan
This e-mail is confidential and should not be used by anyone who is not the original intended recipient. Global
DataPointLimited does not accept liability for any statements made which are clearly the sender's own and not expressly
madeon behalf of Global DataPoint Limited. No contracts may be concluded on behalf of Global DataPoint Limited by means
ofe-mail communication. Global DataPoint Limited Registered in England and Wales with registered number 3739752
RegisteredOffice Middlesex House, 34-42 Cleveland Street, London W1T 4LB