Показать сообщение отдельно
  #1  
Старый 05.05.2015, 13:22
tavka tavka вне форума
Прохожий
 
Регистрация: 01.11.2011
Сообщения: 3
Репутация: 10
По умолчанию получить данные из sql процедуры

добрый день
не могу разобраться с такой проблемой, может кто, что подскажет?

в дельфях есть небольшая процедура
в которой запускается ms sql процедурка и с помощью showmessage я вывожу ее результат переменную session
на форме всего 2 объекта это ADOCommand1 и ADODataSet1

Код:
 ADOCommand1.ConnectionString:='Provider=SQLOLEDB.1;';
  ADOCommand1.CommandText :=   'DECLARE @RC int EXEC @RC = select_zzzz ''2011-11-11'',''2020-11-11'',''001'',''1''';
  ADODataSet1.Recordset:= ADOCommand1.Execute;
  while not ADODataSet1.RecordSet.EOF    do begin
   showmessage(ADODataSet1.FieldByName('session').asstring);
   ADODataSet1.Next;
   end;

Если в ms sql процедуре select_zzzz
я вставлю просто select *, '1111' as session
то в дельфях все срабатывает.

Но если в ms sql процедуре я делаю все, что мне надо, а это создаю
временную таблицу, в нее с помощью
insert into #new_zk
select данные из дургой таблицы , и т.д. ввожу нужные данные
и в конце тоже делаю select делфи выдает ошибку
recordset is not open
если процедуру запускать в ms sql query analizer то все нормально выводится
Ответить с цитированием