Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Хранимые процедуры MS SQL (несколько RecordSet) [D5, MSSQL]


nikolo ©   (2002-11-13 11:31:00) 

Hi! Проблема такая, друзья. Есть хранимая процедура, которая возвращает несколько наборов данных RecordSet. Когда я ее выполняю в Query Analyzer, то все нормально - все результаты вижу. А как получить все эти результаты в Delphi? Я пробовал использовать и TADOStoredProc и TADOQuery. Пробовал так:

{TADOStoredProc}
StorProc.Parameters.ParamValues["@DateOn"] := Date;
StorProc.Prepared := True;
StorProc.Open; {так пробовал}
StorProc.ExecProc; {и так тоже}


{TADOQuery}
Query.Close;
Query.Parameters.ParamValues["pmDateOn"] := Date;
Query.Open;


Вот такая проблемы, помогите решить, пожалуйста...


знк   (2002-11-13 12:54:00) [1]

169333740


KMZ   (2002-11-13 12:53:00) [2]

169333740


nikolo   (2002-11-13 12:51:00) [3]

Мурат, дай UIN Аськи или E-mail


знк   (2002-11-13 12:37:00) [4]

Мурат,
как у тебя дела?
как жизнь?
как работа?


nikolo   (2002-11-13 12:36:00) [5]

Спасибо, им тоже. Может скажешь кто ты ЗНК?


знк   (2002-11-13 12:30:00) [6]

Привет от ДКП!!!


sniknik   (2002-11-13 11:54:00) [7]

stone © (13.11.02 11:44)
гораздо проще (и быстрее) иметь несколько компонентов (датасетов) и после вызова процедуры раздавать каждому свой рекордсет.
оно конечно дело вкуса, но...


nikolo   (2002-11-13 11:50:00) [8]

знк, я Витус, а ты кто?


nikolo   (2002-11-13 11:49:00) [9]

> sniknik © (13.11.02 11:39), спасибо, действительно Recordset := Recordset.NextRecordset(RecordsAffected); помогло, все вроде работает нормально.


знк   (2002-11-13 11:47:00) [10]

Витус это ты?


stone   (2002-11-13 11:44:00) [11]

Отобразить одновременно несколько наборов данных из одного компонента не удастся, тут даже перекдючение рекордсетов не поможет. Добавь в процедуру еще один параметр, который будет указывать какой именно рекордсет вернуть и вызывай процедуру несколькими компонентами.


sniknik   (2002-11-13 11:39:00) [12]

примерно так
Recordset:= Recordset.NextRecordset(RecordsAffected);

в кладовке в программах есть прога TestMdb (моя), скачай и посмотри сделаеш подключение к MS SQL и запускай свою процедуру, если получится смотри как сделано.


Наверх

Титульная страница Поиск, карта сайта Написать письмо