powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
8 сообщений из 8, страница 1 из 1
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39099215
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток. Разбираюсь с чужими довольно старыми отчетами, связка VBA + ADO(MS SQL). При работе программы, используется перемещение по рекордсету вперед и назад, для чего у рекордсета при создании ставится cursortype =adOpenStatic.
Работает это до тех пор, пока хранимка на MS SQL состоит из одного гигантского запроса, если разбить на несколько запросов, или использовать например CTE, то после выполнения хранимки cursortype меняется на adOpenForwardOnly и делает невозможным перемещение по курсору назад вызывая ошибку (DB_E_CANTFETCHBACKWARDS, Набор строк не поддерживает обратную выборку).
Естественно, при разбивке запроса на подзапросы, я ставлю set nocount on. Вопрос - можно ли избавится от необходимости делать весь расчет в одном большом запросе, чтобы тип курсора не менялся на adOpenForwardOnly?


P.S. Может вопрос более уместен бы был в разделе про ADO.Net, EF ....

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100443
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich,
Насколько мне позволяет судить личный опыт, то Ваш вопрос никаким образом не соотносится к ADO.NET и EF, и должен быть перенесен в ветку MS Access. Там Вам быстро помогут.
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100457
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скорее к нам в VB/VBA, вероятно все-таки используется ADO, а не ADO.NET

А с местоположением курсора adUseClient/adUseServer играли?
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100521
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Axelerondenis_viktorovich,
Насколько мне позволяет судить личный опыт, то Ваш вопрос никаким образом не соотносится к ADO.NET и EF, и должен быть перенесен в ветку MS Access. Там Вам быстро помогут.

Возможно Вы правы, правда макрос VBA функционирует в книге MS Excel, а хранимка возвращающая рекордсет выполняется на сервере MS SQL 2008. Проблему с ходу (некрасиво правда) решил тем, что внес свои изменения, добавлением подзапросов в этот большой запрос, не разбивая на несколько запросов с времянками и не юзая CTE. Интересно просто почему так, и есть ли стандартный способ обойти это.
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100526
denis_viktorovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProСкорее к нам в VB/VBA, вероятно все-таки используется ADO, а не ADO.NET

А с местоположением курсора adUseClient/adUseServer играли?

Да, ADO, не ADO.Net, почему я сразу и не запостил сюда.
Про CursorLocation - спасибо за идею, попробую поиграться.
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100528
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovich, может гуглить по словам disconnected recordset?
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100534
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я думаю, клиентский курсор решит проблему.

Еще вариант, юзать в хранимках что угодно, а результат сложить во временную таблицу. А в конце вернуть клиенту простой SELECT * из времянки.
...
Рейтинг: 0 / 0
Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
    #39100535
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis_viktorovichмакрос VBA функционирует в книге MS Excelна будущее - это в http://www.sql.ru/forum/ms-office
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вопрос по ADO и MS SQL, изменяется CursorType после выполнения хранимой процедуры.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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