Michael, I'm not sure if this helps, but I've noticed that if my stored procedure returns all null values, then I can fetch them. If they are non-null values I get an error:
[Dbg]>>> result = conn.execute('claim_highest_priority_work') [Dbg]>>> print result.fetchone() Traceback (most recent call last): File "<interactive input>", line 1, in <module> File "C:\Python25\Lib\site-packages\sqlalchemy\engine\base.py", line 1668, in fetchone self.connection._handle_dbapi_exception(e, None, None, self.cursor, self.context) File "C:\Python25\Lib\site-packages\sqlalchemy\engine\base.py", line 931, in _handle_dbapi_exception raise exc.DBAPIError.instance(statement, parameters, e, connection_invalidated=is_disconnect) ProgrammingError: (ProgrammingError) Attempt to use a closed cursor. None None [Dbg]>>> result = conn.execute('claim_highest_priority_work') [Dbg]>>> print result.fetchone() (None, None, None, None, None) Any idea why this would be? On May 8, 10:46 am, "Michael Bayer" <mike...@zzzcomputing.com> wrote: > Daniel wrote: > > > Thanks Michael, > > > When I try that it produces this SQL > > SELECT claim_highest_priority_work() AS claim_highest_priority_work_1 > > > and this error > > 'claim_highest_priority_work' is not a recognized built-in function > > name. > > this is more of an MSSQL "how to" issue then. on most databases, running > a function and returning results looks like "SELECT function()". On > oracle, its "SELECT function() FROM DUAL". What is it on MSSQL ? > > > > > On May 8, 10:20 am, "Michael Bayer" <mike...@zzzcomputing.com> wrote: > >> Daniel wrote: > > >> > Hello, > > >> > I've created a stored procedure in MSSQL. I'm not sure how to use it > >> > in SQLAlchemy. The stored procedure is called > >> > 'claim_highest_priority_work' and I can call it directly as follows: > > >> > result = conn.execute('claim_highest_priority_work') > > >> > I know it runs because I see the result in the database, but I'm not > >> > sure how to access the return values? They exactly match one of the > >> > tables I've defined. > > >> > What's the right way to map/execute a stored procedure and > >> > subsequently access what it returns? > > >> you probably want to select from it. an expression construct which > >> achieves this would be: > > >> select([func.claim_highest_priority_work()]) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---