Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #68305

Re: DB API question - where is a stored procedure's return value?

References <CANc-5Uz98mTCjUuk_yOHqWeZRwp6JnTCagTQ=bzobhtWAceKxg@mail.gmail.com>
From Ian Kelly <ian.g.kelly@gmail.com>
Date 2014-03-12 17:00 -0600
Subject Re: DB API question - where is a stored procedure's return value?
Newsgroups comp.lang.python
Message-ID <mailman.8110.1394665261.18130.python-list@python.org> (permalink)

Show all headers | View raw


On Wed, Mar 12, 2014 at 3:44 PM, Skip Montanaro <skip@pobox.com> wrote:
> What do other database adaptors do about stored procedure return
> values? Does PEP 249 need revision?

I can't speak generally, but in cx_Oracle you either execute a query like this:

    result = cursor.var(cx_Oracle.NUMBER)
    cursor.execute(":1 := test_proc()", [result])
    print(result.getvalue())

or you use the non-standard callfunc method:

    print(cursor.callfunc("test_proc", cx_Oracle.NUMBER))

As a general solution, one might wrap a stored procedure that returns
a value into a stored procedure that has an output parameter and call
it with callproc.  Some implementations might include a return value
in the parameter list anyway.

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: DB API question - where is a stored procedure's return value? Ian Kelly <ian.g.kelly@gmail.com> - 2014-03-12 17:00 -0600

csiph-web