adodbapi and output parameters in stored procedures

2008-11-07 Thread leesquare
Hello,

I need some help getting output values from my stored procedures when
using adodbapi.  There's an example
testVariableReturningStoredProcedure in adodbapitest.py, and that
works for my system.  But my stored procedure also inserts and
accesses a table in the database.  Here's what I have it boiled down
to:

So, when I have
CREATE PROCEDURE sp_DeleteMeOnlyForTesting
@theInput varchar(50),
@theOtherInput varchar(50),
@theOutput varchar(100) OUTPUT
AS
SET @[EMAIL PROTECTED]@theOtherInput

Then, I can run in python:
>>> cursor = db.conn.cursor()
>>> cursor.callproc('sp_DeleteMeOnlyForTesting', ('hello', 'bye', ''))
[u'hello', u'bye', u'hellobye']


If I redefined the procedure as
CREATE PROCEDURE sp_DeleteMeOnlyForTesting
@theInput varchar(50),
@theOtherInput varchar(50),
@theOutput varchar(100) OUTPUT
AS
SELECT * From dbo.testtable
SET @[EMAIL PROTECTED]@theOtherInput

Then, the python comes out as :
>>> cursor = db.conn.cursor()
>>> cursor.callproc('sp_DeleteMeOnlyForTesting', ('hello', 'bye', ''))
[u'hello', u'bye', u'']

My search on the web found a couple of posts with similar problems,
but no solutions.  I am using SQLOLEDB.1 as Provider, connecting to
SQL Server 2005.

Any help appreciated.  I just need one method of passing an output
parameter back to python.

Thanks,
Li
--
http://mail.python.org/mailman/listinfo/python-list


Re: adodbapi and output parameters in stored procedures

2008-11-07 Thread leesquare
Thanks for that excellent pointer!

I was able to do just what you said with

But if my procedure has an insert statement in its midst, it doesn't
work.  The cursor.fetchall() gets an exception.
Any ideas?

--Li
--
http://mail.python.org/mailman/listinfo/python-list