ADODB & stored procedure
От: dugra Россия  
Дата: 13.11.04 04:38
Оценка:
Есть такой код:

Dim cn as new ADODB.Connection
Dim rs as new ADODB.Recordset

cn.Open ... ' connection to sql-server

Set rs = cn.Execute("StoreProcName", ...)

Если в процедуре не используется веременная табличка, все нормально. Если сделаю простой select * from #t1, rs не получает ничего. Кто-нибудь может помочь. Может это баг конкретной реализациии oledb драйвера? Спасибо.
... << RSDN@Home 1.1.3 stable >>
Re: ADODB & stored procedure
От: rus blood Россия  
Дата: 14.11.04 11:51
Оценка:
Здравствуйте, dugra, Вы писали:

D> Есть такой код:


D>Dim cn as new ADODB.Connection

D>Dim rs as new ADODB.Recordset

D>cn.Open ... ' connection to sql-server


D>Set rs = cn.Execute("StoreProcName", ...)


D> Если в процедуре не используется веременная табличка, все нормально. Если сделаю простой select * from #t1, rs не получает ничего. Кто-нибудь может помочь. Может это баг конкретной реализациии oledb драйвера? Спасибо.


0. Должно работать...
1. Флаги, что это вызов процедуры, и что она возвращает рекордсет, стоят?
2. Временная таблица точно создается в этой процедуре?
Имею скафандр — готов путешествовать!
Re[2]: ADODB & stored procedure
От: dugra Россия  
Дата: 14.11.04 22:56
Оценка:
Здравствуйте, rus blood! Спасибо за то, что откликнулся. Разобрался..., дело было в set nocount on .
... << RSDN@Home 1.1.3 stable >>
Re: ADODB & stored procedure
От: rockandroll Казахстан  
Дата: 15.11.04 04:25
Оценка:
Здравствуйте, dugra, Вы писали:

D> Если в процедуре не используется веременная табличка, все нормально. Если сделаю простой select * from #t1, rs не получает ничего. Кто-нибудь может помочь. Может это баг конкретной реализациии oledb драйвера? Спасибо.


Таблица создается в процедуре?
Если так, то надо вызывать rs.NextRecordSet
У себя я делал примерно так:
rs.Open cmd
Do While rs.State = adStateClosed
    Set rs = rs.NextRecordset
Loop
... << RSDN@Home 1.1.4 >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.