powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / SQL Server + MS Access - 2000. Блокировка записей.
6 сообщений из 31, страница 2 из 2
SQL Server + MS Access - 2000. Блокировка записей.
    #32440256
AVKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
АлексейК, я тебе кране признателен за советы, материализовавшиеся, в частности, в готовом коде. И за предложение пояснить этот код не меньше. Не сомневаюсь, что через некоторое время воспользуюсь твоей любезностью. Наверное, уже по мэйлу, чтобы остальным не надоедать. Или лучше здесь?

А до сих пор не воспользовался советом я по самым стандартным для непрофессионального программиста причинам: врожденный консерватизм, страшный перегруз остатков мозга (трудно резко перескочить на новый подход когда свободной оперативки остался 1 Кб), необходимость срочного решения проблемы. По привычным рельсам всегда проще ехать, хотя это далеко не всегда правильно.

Но сегодня выяснил, что, по всей видимости, получу "добро" на перевод всего и вся в ADP. Тогда всех здесь замучаю:))

Еще раз спасибо всем, кто принял участие в обсуждении проблемы!
...
Рейтинг: 0 / 0
SQL Server + MS Access - 2000. Блокировка записей.
    #32440284
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторпосле получения по запросу набора записей (rs) в виде DAO.Recordseta вставил строчку rs.MoveLast. И только потом присвоил форме этот рекордсет. Эффект вышел такой: скорость выборки, само собо, заметно упала, зато НИКАКИХ блокировок. Данные вводятся асболютно без тормозов.
О как,
вообще-то детали смотреть надо,

Но
попробуй - может MoveFirst - тоже лечит? - если да - "устаканишь" производительность.

а вопрос 3 - умер по дороге - а следы остались.
...
Рейтинг: 0 / 0
SQL Server + MS Access - 2000. Блокировка записей.
    #32440353
AVKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И почему это запрос не отрабатывает полностью за положенное время, а продолжает "держать" таблицу...

MoveFirst сейчас попробую, хотя меня терзают смутные сомненья. Ожидаю, что этот фокус не пройдет. Я так понял, что серверу хочется, чтобы кто-ниубудь на весь запрос полюбовался прежде чем "отпускать" записи. Хотя я пробовал без "MoveLast-а" руками прокручивать записи в форме. "Отпускает" где-то на второй половине набора, т.е. до самого "ласта" добираться не надо. Понять бы в какой момент это происходит...

И еще есть опасность развития шизофрении. Когда одной рукой на одном ПК одного пользователя изображаешь, а второй рукой на соседнем - второго:)...
...
Рейтинг: 0 / 0
SQL Server + MS Access - 2000. Блокировка записей.
    #32440539
AVKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделал окончательную ерунду. Заменил rs.MoveLast на

rs.FindFirst ("ID_записи=") & DMax("ID_записи", "ОсновнаяТаблицаПоиска")

Эффект замечательный. Скорость выборок повысилась раз в 5-6. Причем с выборками работают одновремнно 5 человек (больше не удалось собрать). А двое в максимально быстром режиме вводят и редактируют. Все происходит без заметных задержек.

Пришел к таким выводам. При поиске максимального идентификатора происходит "прокурчивание" рекордсета. Так же, как и при MoveLast, но поскольку ID - PK числового формата, то прокрутка происходит несоразмеримо быстрее.

Бред какой-то... Но ведь работает!
...
Рейтинг: 0 / 0
SQL Server + MS Access - 2000. Блокировка записей.
    #32440553
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот было бы совсем хорошо, если бы еще опубликовал, как рекордсет открываешь.
...
Рейтинг: 0 / 0
SQL Server + MS Access - 2000. Блокировка записей.
    #32440631
AVKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dim rs as DAO.Recordset

Set rs = CurrentDb.OpenRecordset(strSql, dbOpenSnapshot)

(Дальше та самая строчка с поиском максимального ИД)

А потом:

Set Me.Recordset = rs

-------------------

strSql - это собранная по кусочкам строка запроса: "Select ... "

dbOpenSnapshot - для перестраховки. Само по себе не помогало.

-------------------
...
Рейтинг: 0 / 0
6 сообщений из 31, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / SQL Server + MS Access - 2000. Блокировка записей.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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