powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Еще один вопрос по ADO
2 сообщений из 2, страница 1 из 1
Еще один вопрос по ADO
    #32020591
Serhiy Snisarenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые коллеги,

я просмотрел все темы по ADO на этом форуме, но не смог найти ответ на следующий вопрос:

Имеется SP на sql7
create procedure Proc1
(@oparam1 int output
,@iparam1 varchar(255)
...
as
...
set @oparam1 = x

select f1, f2
from t1
where f1 = @param1

return 0

т.е. эта SP возвращает как output переменную, так и Recordset.

В ASP делаем следующее:

' Set CommandText equal to the stored procedure name.
oCmd.CommandText = "Proc1"
oCmd.CommandType = adCmdStoredProc
...
oCmd.Parameters.Refresh
' Set the parameters values.
oCmd(1) = 0
oCmd(2) = Request.Form("param1")
...
' Execute once and display...
и вот здесь и возникает проблема. Если выполнять SP след. образом
Set oRsInd = oCmd.Execute
, то я получаю требуемый Recordset, но значение oCmd(1) остается равным 0.

А если выполнять ее так
'oCmd.Execute
, то я получаю правильное значение oCmd(1), но я не могу в этом случае получить требуемый Recordset.

Подскажите, пожалуйста, можно ли за ОДНО выполнение получить и то и другое?
Заранее спасибо
...
Рейтинг: 0 / 0
Еще один вопрос по ADO
    #32020596
Tabloid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это решается очень просто:
1) поставить MDAC 2.6;
2) output-параметры считывать после прочтения всего рекордсета.

Или так:
Не делать никаких output-параметров, а все данные слать через рекордсет:
select * from tableX;
...
select @cnt as count;
...
selet @cnt1 as count;
После этого читаешь первый рекордсет как обычно, затем
set oRs = oRs.NextRecordset;
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Еще один вопрос по ADO
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]