2008-11-07 1 views
8

Я использую python \ pyodbc и хотел бы получить доступ ко второму результирующему набору хранимой процедуры. Насколько я могу судить, pyodbc не поддерживает несколько наборов результатов. Кроме того, я не могу изменить хранимую процедуру. Существуют ли какие-либо опции для доступа ко второму набору результатов с использованием SQL или какой-либо другой работы? Возможно, создайте вторую хранимую процедуру, которая возвращает только второй набор результатов первого?Доступ ко второму результирующему набору хранимой процедуры с SQL или другим обходом? Python pyodbc

ответ

0

Существует несколько возможных способов: here. Если результирующие наборы все одинаковы, вы можете использовать метод INSERT ... EXEC. В противном случае может работать OPENQUERY.

9

Ничего не нужно. Просто используйте следующую команду:


import pyodbc 

db = pyodbc.connect ("") 
q = db.cursor() 
q.execute (""" 
SELECT TOP 5 * FROM INFORMATION_SCHEMA.TABLES 
SELECT TOP 10 * FROM INFORMATION_SCHEMA.COLUMNS 
""") 
tables = q.fetchall() 
q.nextset() 
columns = q.fetchall() 

assert len (tables) == 5 
assert len (columns) == 10 

+0

http://code.google.com/p/pyodbc/wiki/Cursor#nextset – bernie 2009-04-11 20:05:05

Смежные вопросы