-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


MSAccess ADP + хранимая процедура с параметрами как источних данных формы.

Четверг, 20 Марта 2014 г. 12:35 + в цитатник
Есть процедура, отбирающая записи из базы с определенными параметрами, делающая нужные рассчеты в базе и отдающая результат. Если открывать процедуру просто из окна аксеса, заполнить параметры руками и запустить, то данные отбираються очень быстро.
Данные на форме "напрямую" не редактируются.
Попробовал назначить процедуру как источник данных формы в конструкторе, при запуске формы появляются окна с запросами параметров. Как их заполнить программно ДО открытия формы не нашел.
Пошел по пути назначения ADODB.Recordset как рекордсет формы. Делаю так:

Dim recset as ADODB.Recordset
Dim comm as ADODB.Command

set comm = new ADODB.Command
set reсset = new ADODB.Recordset

comm.CommandType = adComStoredProc
comm.CommandText = "sp_ViewStore"
comm.ActiveConnection = CurrentProject.Connection
comm.Parameters.Refresh
--
Заполняю параметры
--
recset.CursorType = adOpenStatic
recset.CursorLocation = adUseServer
recset.LockType = adLockReadOnly

set recset = comm.Execute(true)
set Me.Recordset = recset

Вот запуск процедуры в таком варианте идет порядка минуты, что неприемлимо и не совсем понятно почему так долго. Пробовал и клиенский, и серверный курсор - результат одинаковый.
Почему так долго и как с этим бороться?

http://www.sql.ru/forum/1083826/msaccess-adp-hranimaya-procedura-s-parametrami-kak-istochnih-dannyh-formy


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку