![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADO.Recordset [D6, MSSQL]
Nebula © (2002-05-20 11:43:00)ADODataSet выполняет запрос и после получения ADO.Recordset-а (из свойства ADODataSet.Recordset) он становится однонаправленным (только при запросах с union, having, group by ...).
Как из однонаправленного курсора сделать двунаправленный?
roottim (2002-05-23 10:30:00) [1]ADOQuery с этими запросами так же работает?
Nebula (2002-05-23 10:06:00) [2]С типими и расположениями курсоров я знаком. Recordset возвращает однонаправленный курсор в случае сложных наборов, когда нет соответствия какой либо таблице. Иименно такие наборы и получаются при использовании union, group by, там одна строка может собираться из нескольких физических строк и таблиц. Проблемма при работе именно с такими запросами.
AlexMey (2002-05-20 13:25:00) [3]У объекта ADO.recordSet есть свойство - CursorType. По умолчанию, по-моему, оно устанавливается adOpenForwardOnly(движение только вниз). Если Вам необходимо ещё и вверх, то перед использованием recordSet переопределите его, к примеру, в adOpenStatic - но, правда, это потредует чуть больше ресурсов.
var rs : _Recordset;
rs.CursorType := adOpenStatic;
rs := ADOConn.Execute(...);