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

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

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

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

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

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

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

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

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

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

Set dbProtect = OpenDatabase(strPath, True)

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

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

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

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


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