powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как захватить базу Access для монопольного доступа?
13 сообщений из 13, страница 1 из 1
Как захватить базу Access для монопольного доступа?
    #32239567
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня система состоит из двух частей. Часть с данными (mdb) находится на сервере, а часть с кодом (mdb) у пользователя. Для проведения некоторых администраторских работ (корректировка таблиц, архивирование, и т.п.) я хочу захватить базу на сервере в монопольное использование.
Как это можно сделать?
Я подключаю таблицы из базы данных следующим способом:

DoCmd.TransferDatabase acLink, "Microsoft Access", _
DbPath, acTable, TName, TName, False, False

DbPath - база данных
TName - имя таблицы

Через ODBC подключиться нельзя, система пишет:

Недопускается использование ODBC для импорта, экспорта, или присоединения таблиц из внешней базы данных Microsoft Jet или базы данных ISAM.

Что делать?
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239572
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Самое надежное - переименовать файл, и чтобы никто не знал...
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239588
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Саныч
еще надежнее - SHift+DEL
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239589
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем переименовывать? ...
Ты предлагаешь переименовать файл, потом к нему подключиться, сделать то, что надо, отключиться, затем опять переименовать и отдать юзерам на разграбление.
Идея понятная но не очень красивая. И как подключаться, если база закрыта паролем? Может через DBEngine?
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239604
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
> Идея понятная но не очень красивая.

Зато надежная.

> И как подключаться, если база закрыта паролем? Может через DBEngine?

Как угодно. Мое решение никак не осложняет эту задачу.
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239622
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот сюда (п. 6.3)
http://www.sql.ru/faq/faq_topic.aspx?fid=155
не смотрел?
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239866
Если методами DAO, то:
OpenDatabase - может открыть БД в монопольном режиме.
CreateTable - может создать присоединенную таблицу в текущей БД.
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239872
Фотография TatianaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для проведения администраторских работ пользуюсь таким методом:
на сервере есть табличка , в ней поле-флаг
на главной форме таймер
устанавливаю в табличке флаг в true аппликация по таймеру увидила что
флаг=true даёт месадж в виде форме (обязательно в виде формы а не месаджбокс )что через например через 10 минут аппликация будет закрыта и через 10 минут закрываю аппликацию
а у главной формы на событие лоад проверка - если флаг=true то закрыть аппликацию( на тот случай если пользователь месаджа не видел )
таким образом через 10 минут все из базы выдворены
провожу манипуляции и потом флаг снимаю
и все продолжают работать
если работы заранее запланированы и знаешь точное время и примерно сколько твоя процедура времени займёт- можешь сообщения по Аутлуку рассылать
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239879
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как говорил мой друг - "Учите матчасть!!!"

Открыть базу данных в монопольном режиме:
Public(Private) dbProtect as DataBase

Set dbProtect = OpenDatabase(strPath, True)

где strPath - полный путь к базе

База будет открыта в монопольном режиме в области действия переменной dbProtect.

Geo, спасибо за ссылку. Хоть и несовсем в тему, но полезно.
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239888
Фотография TatianaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Учить матчасть надо обязательно
но перед открытием в монопольном режиме надо пользователей из базы выставить
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239906
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TatianaT.
Что надо выгнать всех юзеров - ясно. Иначе нельзя подключиться в монопольном режиме. Система вываливает сообщение об ошибке.

А как увидеть, кто сейчас подключен к базе? Я где-то встречал информацию по этому вопросу, но тогда она была мне ненужна, а сейчас не могу найти.
Кто-нибудь знает?
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239925
Фотография TatianaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если база мдб-пользуюсь LDBView
...
Рейтинг: 0 / 0
Как захватить базу Access для монопольного доступа?
    #32239958
RVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Joss
Смотри здесь.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как захватить базу Access для монопольного доступа?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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