Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб_раб_базы_данных.doc
Скачиваний:
54
Добавлен:
21.11.2019
Размер:
2.59 Mб
Скачать

Лабораторная работа № 14 Работа с базами данных в распределенной среде

Теоретические сведения

Сетевые возможности наиболее развиты в корпоративных СУБД, но в связи с распространенностью сетевых технологий настольные СУБД также обеспечивают работу в многопользовательском режиме. Access допускает до 255 одновременно работающих с БД пользователей. Кроме самостоятельного использования Access может применяться в качестве интерфейсного средства при работе в гетерогенной СБД (как правило, совместно с MS SQL-сервером).

Существует несколько способов совместного использования данных Access в многопользовательской среде:

  • совместное использование всей БД (таблиц, форм, отчетов, запросов, макросов и модулей);

  • совместное использование таблиц БД;

  • совместное использование объектов БД или страниц доступа к данным в Интернете;

  • репликация БД;

  • создание приложения в архитектуре «клиент-сервер».

Можно поместить всю БД Access на сетевой сервер или в общую папку. Следует убедиться, что для БД задано открытие в режиме совместного доступа. Установить этот режим можно командой Сервис > Параметры. На вкладке Другие в группе параметров Режим открытия по умолчанию следует выбрать параметр Общий доступ (рис. 51).

Рис. 51. Настройка параметров при совместном использовании БД

Здесь же можно настроить параметры, управляющие блокировкой и обновлением данных. Блокировкой называется запрещение изменения данных, если их корректирует другой пользователь. Можно выбрать одно из трех возможных значений параметра блокировки.

1. Отсутствует. При выборе параметра изменяемая запись не блокируется. При попытке сохранить измененную запись, которую в это же время изменял другой пользователь, на экране появляется предложение:

  • сохранить данный вариант записи, уничтожив изменения, внесенные другим пользователем;

  • скопировать свою измененную запись в буфер обмена;

  • отказаться от собственных изменений.

Использование этого значения параметра блокировки может привести к нарушению целостности данных, если квалификация и ответственность пользователей, вносящих изменения недостаточно высоки.

2. Изменяемой записи. Access блокирует изменяе­мую в данный момент запись, не позволяя изменять ее другим пользователям. При этом заблокированными могут оказаться другие записи, расположенные рядом на диске. Выбор данного значения параметра блокировки гарантирует завершение всех начатых изменений.

3. Всех записей. Access блокирует все записи формы и базовых таблиц на весь период их открытия, поэтому другие пользователи не могут изменить или заблокировать записи. Этот параметр следует использовать в случае выполнения массовой корректировки БД либо при выполнении какой-либо приоритетной задачи, предъявляющей жесткие требования ко времени ее выполнения.

Кроме того, в Access возможна временная ручная бло­кировка поля. Чтобы заблокировать поле, необходимо выделить его и нажать клави­ши [Ctrl]+[F11]. Чтобы снять блокировку, следует выделить поле и нажать клавиши [Ctrl]+[Shift]+[F11].

Можно выполнить настройку периода обновления и повторов обновления. В поле Период повтора обновления (мс) задается интервал, по истечении которого Access попытается сохранить измененную запись, заблокированную другим пользователем. В поле Число повторов обновления задается число попыток сохранения измененной записи, заблокированной другим пользователем. В поле Период обновления ODBC (с) задается интервал, по истечении которого Access автоматически обновляет записи, доступ к которым осуществляется через ODBC. В поле Период обновления (с) задается период автоматического обновления данных. Этот параметр действует только при работе с БД в сети.

Совместное использование всей БД является наиболее простым способом организации совместного доступа. Все работают с одними и теми же данными, формами, отчетами, запросами, макросами и модулями. Это приемлемо, когда информационные потребности пользователей совпадают.

Существует другой путь – разделение БД на две части. На сетевой сервер помещаются только таблицы БД, а остальные объекты хранятся на компьютерах пользователей. Работа происходит быстрее, так как по сети передаются только данные. Если разделить БД на серверную часть и клиентскую часть, пользователь получит возможность изменять формы, отчеты и другие объекты в собственной клиентской БД, не влияя при этом на других пользователей.

Для разделения БД, необходимо выполнить следующие шаги:

  • выбрать команду Сервис > Служебные программы > Разделение баз данных;

  • на вопрос мастера Разделить базу данных? указать место на диске, где будет размещена отделенная БД (часть исходной БД, содержащая таблицы).

При формировании запросов используемые таблицы могут находиться в другой БД Access и даже в БД других СУБД. При этом используется присоединение таблиц. Администратор сети может создать несколько копий стандартной БД с присоединенными таблицами или позволить пользователю создавать собственные БД и присоединять таблицы самостоятельно. Пользователи могут корректировать данные в присоединенной таблице, но не могут ме­нять ее структуру.

Для пользователей, совместно работающих с одним приложением и не всегда имеющих возможность подключиться к локальной сети, предназначена процедура репликации БД. Репликацией называется создание специальных копий (реплик) обшей БД, с которыми пользователи могут одновременно работать на разных компьютерах (в командировке, когда невозможно подключиться к сети или когда необходимо уменьшить загрузку сети). В отличие от обычной копии файлов БД для реплики возможна синхронизация изменений.

Преобразование БД в реплицированную выполняется командой меню Сервис > Репликация >Создать реплику. При этом Access присваивает БД статус основной реплики и создает новую реплику. Реплицировать можно только закрытую БД, которая не защищена па­ролем. Поскольку исходная БД при репликации изменяется, то перед со­зданием реплики следует создать резервную копию исходной БД.

После внесения изменений в реплики возможна их синхронизация с помощью команды Сервис > Репликация >Синхронизация. При проведении сеанса синхронизации изменения, сделанные одним пользователем, могут автоматически вноситься в общую реплику и реплики других пользователей и наоборот. В процессе синхронизации производится обмен обновленными записями и объектами между репликами. Если пользователи двух разных реплик по-разному изменили одну и ту же запись, то создается конфликтная таблица. Для просмотра и исправления конфликтующих записей следует выполнить команду Сервис > Репликация > Устранить конфликты. При проведении синхронизации работа с БД может продолжаться.

В БД могут реплицироваться не все объекты, часть может использоваться локально. Некоторые объекты реплицируются группами пользователей. Для создания реплик БД можно использовать также «Портфель» Windows.

Практическая работа

При выполнении лабораторной работы необходимо:

  • поместить БД на сетевой сервер или в общую папку, задать для БД открытие в режиме совместного доступа, выполнить необходимые настройки блокировки и обновления и проверить работу с БД в многопользовательском режиме

  • разделить БД на серверную и клиентскую часть, выполнить необходимые настройки и проверить работу с БД в многопользовательском режиме;

  • создать реплику БД на удаленном компьютере, внести изменения в реплику и провести сеанс синхронизации, устранив возможные конфликты;

  • составить отчет по лабораторной работе.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]