powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Блокировка доступа к базе данных
23 сообщений из 23, страница 1 из 1
Блокировка доступа к базе данных
    #32414398
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно, чтобы в процессе выполнения, вызываемого из VBA, запроса одним юзером остальные юзеры не имели доступа к базе данных. Т.е. допустим один юзер выполняет запрос на вставку. Нужно чтобы на время выполнения этого запроса для остальных юзеров база была не доступна. Как это сделать силами VBA?
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414417
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак. Не надо так делать.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414490
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак
может есть и другие точки зрения???

Не надо так делать
наверное в это трудно поверить, но мне нужно делать именно так...
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414493
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Только программно. Завести таблицу, в которой будут отражаться действия юзеров. Разрешать делать то-то и то-то только при условии, что никто в этот момент не делает сё-то и сё-то.

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

И плюс надо позаботиться о ситуациях, когда два юзера захотят что-то сделать одновременно. Обычная проверка может просто не уловить то, что надо.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414494
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, спасибо!
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414499
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, Саныч, я хотел бы услышать твое мниние.
Как я говорил в одном из топиков, у меня возникла серьезная проблема со скоростью работы программы по сети. В качестве единственного ее решения было предложено ADP + SQL. Однако я считаю, что для моей задачи SQL Server это перебор. Появилась альтернативная идея организации работы программы.
При открытии каждой формы создается копия таблицы (таблиц), с которыми эта форма работает. Если быть точным, то копируется не вся таблица, а только необходимые данные. Далее пользователь работает не напрямую с таблицей (таблицами), а с ее копией. Если внесены изменения, то программа с помщью соответствующих запросов вносит изменения в основную базу. Причем на момент изменений база блокируется от доступа других пользователей. Таким образом обходить та ситуация, когда одна база открыта на нескольких машинах.
По-моему такой подход должен ускорить работу программы.
--
Интересуюсь конструктивной критикой и прочими предложениями и дополнениями...
--
А может быть это изобретение велосипеда???
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414502
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А почему слово услышать выделено? Типа, живой голос нужен? Ну, номер моей мобилы я тут где-то давал...

ИМХО, это изврат. Конечно, сделать так можно . Работать будет. Но юзеры будут тихим словом проклинать того, кто принял решение сэкономить на покупке SQL сервера.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414505
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
юзеры будут тихим словом проклинать
Программа работает на 25 машинах. Запросы выполнятся за секунды, т.е ожидание не должно быть долгим. Ситуация, когда несколько юзеров одновременно (или почти одновременно) обращаются к базе очень редкая.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414515
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
25 машин, 25 пользователей... Почему не SQL Server???
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414612
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Почему не SQL Server???
Не знаю я его. А узнавать времени нет.
---
Пока что программа работает на 7 машинах. А на 25 будет работать, когда она будет закончена. Конечно планируется переход на SQL Server и, изложенный выше, вариант решения проблемы является промежуточным.
---
Хотелось бы услышать мнение о недостатках подхода.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414642
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причем на момент изменений база блокируется от доступа других пользователей. Таким образом обходить та ситуация, когда одна база открыта на нескольких машинах.


Вот если поднять многие топики этого замечательного парня, то будет яркий пример того, как НЕЛЬЗЯ делать. К примеру, не целесообразно обновлять записи по рекордсету, когда есть запросы...
Всеволод, я пользователь, очень люблю курить. Открыл я форму, притянул к себе данные - и припёрло мне покурить и по малой (а ещё страшнее по большой нужде) сходить. И заблокировал я всю базу.
Ситуация, когда несколько юзеров одновременно (или почти одновременно) обращаются к базе очень редкая.
Но она же всё равно рано или поздно возникнет. НЕЛЬЗЯ на это закладываться!
Или я не так понял всю глубину мысли?

P.S. Сиквел можно пока использовать в качестве хранилища данных и постепенно изучать методы, которые способны облегчить тебе выполнение той или иной задачи.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32414643
Roalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда-то видел как решали подобную задачу (несколько навыворот), под MSA2.0 и Win95. Количество пользователей и машин того же порядка.
У каждого пользователя свои данные и своя база, кроме того одна общая база.
Когда пользователь решает, что его данные созрели для всеобщего обозрения, он их отправляет в общую базу, причем не все данные, а только те которые могут понадобиться другим. Если данные устарели, то в зависимости от их типа, данные либо удаляются до их редактировании, либо помечаются как устаревшие, либо заменяются после редактирования.
Информация из общей базы подгружается в базу пользователя по мере необходимости и обрабатывается уже в ней.
Эдакий эквивалент распределенных вычислений :).
У этого метода было много недостатков, связанных с надежностью, быстродействием, разграничением прав, но свои задачи он решал. Без сервера.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415477
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>...заблокировал я всю базу.
База блокируется ТОЛЬКО на момент выполнения соответствующих запросов.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415495
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВсеволодНе знаю я его. А узнавать времени нет.

Шел как-то мужик по лесу, видит, лесоруб дерево рубит на редкость тупым топором. Мужик и говорит: "эй, уважаемый, подточи топор-то, дело быстрее пойдет!". На что лесоруб ответил: "Некогда мне!!! Времени мало, надо деревьев поскорей нарубить!"
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415555
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый zz, я сказал, что интересуюсь конструктивной критикой по предложенному решению проблемы. Или вас интересуют мои личные дела и распределение моего свободного и рабочего времени, а также стоящие предо мной задачи по работе?
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415572
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет. Ничего из вышеперичисленного меня совершенно не интересует. С чего вы это взяли? Совет Темного в данной ситуации вполне целесообразен, однако вы как-то странно на него отреагировали. Что и послужило поводом для написания мной постинга. В котором, кстати, не было ни слова ни о вашем личном времени, ни о стоящих перед вами задачах. С чего такая бурная реакция?
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415579
vist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще говоря сделал так сделал = сколько народу столько мнений!
У меня была подобная проблема- сделал так
В форме все поля несвязные
Запонлняем и insert into.....
Может быть я что-то не так понял...
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415591
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выдержки из ЭТОГО топика:
>25 машин, 25 пользователей... Почему не SQL Server???
Не знаю я его. А узнавать времени нет.
---
Пока что программа работает на 7 машинах. А на 25 будет работать, когда она будет закончена. Конечно планируется переход на SQL Server и, изложенный выше, вариант решения проблемы является промежуточным.
-------------------------
>С чего такая бурная реакция?
Я тут не деревья рублю побыстрому, а занимаюсь серьезной объемной задачей, которую нужно качественно решить в максимально короткие сроки.

vist
А вот и единомышленники
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415660
Allll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А меня запишите в единомышленники? :) - третьим буду?

У меня похожая ситуация - SQL сервера нет и не предвидится, а разбираться с блокировками во время редактирования как-то нужно.

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

Возможные блокировки отслеживал через On Error и цикл ожидания.
База работает около 2-х лет, пользуются 5 человек. Иногда при сохранении "задумывается". Никаких других эффектов/глюков от использования такой технологии пока не было.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415935
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вернусь к вопросу, по которому был создан этот топик.
В параметрах базы данных есть пункт "Режим открытия по умолчанию"->"общий доступ" и "монопольный доступ".
Возможно ли программно включать и выключать монопольный доступ в процессе работы программы или изменение этого параметра доступно только при перезапуске базы?
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415961
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В факе по сжатию БД есть способ для а200х.
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32415992
vist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А зачем на монопольное? В твоем случае ни один пользователь не испортит вставляемую запись по пионерскому принципу-кто первым встал-того и тапки
а твой юзер-всегда первый
...
Рейтинг: 0 / 0
Блокировка доступа к базе данных
    #32416001
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vsevolod VА вот и единомышленники
Имеется в виду, что выполнение запроса INSERT INTO и блокировка, как было сказано, ВСЕЙ базы - одно и то же?

См. высказывание Hummer'a где-то в соседних топиках по поводу вопросов и путей
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Блокировка доступа к базе данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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