Хранимая процедура не возвращает данные, если выполняется из VBA - PullRequest
0 голосов
/ 13 января 2010

Я сохранил процедуру MySPOld в Sybase db. Я создал новый SP MySP. Этот новый sp возвращает данные при выполнении из Sybase Sql Advantage. Но не возвращает данные при вызове из VBA - Excel 2003 (свойство EOF набора записей - True) Вот мой код ..

Dim dbCon As ADODB.Connection
Dim rstTemp As New ADODB.Recordset
Dim query As String
query = "exec MySP '01/01/2010', '01/14/2010'"
dbCon.Open connectionString, "username" "password"
dbCon.CommandTimeout = 300
rstTemp.Open query, dbCon, adOpenForwardOnly

Код работал хорошо со старым sp. В чем может быть проблема ? есть идеи?

Заранее спасибо.

1 Ответ

3 голосов
/ 13 января 2010

Я предполагаю, что все работает нормально с преимуществами isql или sql!

Сравниваете ли вы с нулем где-нибудь в новой процедуре? Ранее я обнаружил, что операторы типа «if @var = null» ведут себя по-разному при вызове из isql и т. Д. По сравнению с VBA или vbScript. Если у вас есть что-то подобное, просто замените его на «если @var равен нулю», и оно будет работать.

...