Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Access.методика.doc
Скачиваний:
43
Добавлен:
06.01.2021
Размер:
45.39 Mб
Скачать

7.16. Разделение базы данных Access на две связанные базы данных

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

  • все пользователи сети совместно используют один общий набор данных;

  • несколько пользователей могут одновременно обновлять данные;

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

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

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

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

Для упрощения этой задачи в Access предусмотрен встроенный мастер, который выполняет работу автоматически. Например, в базе данных Mountain Animal Hospital можно выделить все таблицы в отдельный файл базы данных. Позже можно импортировать все таблицы обратно в оригинальный файл базы данных либо продолжать использовать разделенные файлы баз данных.

Для запуска мастера разделения базы данных выполните следующее.

  1. Для отображения диалогового окна Открытие файла базы данных (Open) выберите в меню команду Файл — Открыть (File — Open).

  2. Выделите базу данных Mountain Animal Hospital.mdb и для ее копирования в буфер обмена нажмите комбинацию клавиш <Ctrl+C>.

  3. Для вставки копии файла в папку, содержащую оригинальный файл, нажмите комбинацию клавиш <Ctrl+V>. Новому файлу автоматически присваивается имя Копия Mountain Animal Hospital.mdb (Copy of Mountain Animal Hospital.mdb).

  4. Выберите только что созданную базу данных Копия Mountain Animal Hospital.mdb и откройте ее. Теперь можно начинать выполнение основной операции разделения. Мастер разделения баз данных не инсталлируется в случае выбора опции стандартной инсталляции при установке Office XP. Поэтому если вы выбрали стандартную установку и собираетесь использовать мастер разделения баз данных, вам необходимо иметь под рукой инсталляционный компакт-диск Office XP.

  5. Запустите мастер разделения базы данных, выбрав команду Сервис —Служебные программы — Разделение баз данных (Tools — Database Utilities—Database Splitter). С помощью этого мастера можно разбить одну базу данных на два файла. В первом окне мастера необходимо просто подтвердить свое желание разбить базу данных, как показано на

  6. Активируйте кнопку Разделить (Split Database). Откроется диалоговое окно Создание базы данных с таблицами (Create Back-End Database), в

котором необходимо указать имя файла для сохранения всех таблиц. По умолчанию задается имя Копия Mountain Animal Hospital_be.mdb (be означает back-end (серверная часть)).

7. Примите заданное по умолчанию название серверной базы данных (то же самое название только с добавлением суффикса "be") и активируйте кнопку Разделение (Split). Мастер создаст новую базу данных, в которую будут перемещены все таблицы. После чего автоматически будут созданы связи с этими таблицами, чтобы все существующие объекты (формы, отчеты и т.п.) продолжали работать. Затем на экране отобразится окно с сообщением об успешном разделении базы данных.

рис. 7.10. Мастер разделения базы данных

  1. В этом окне сообщения активируйте кнопку ОК.

Access создаст новую базу данных, копируя все таблицы из текущей базы данных в новую, и устанавливая с ними связи. После завершения этого процесса на экран выводится сообщение об успешном завершении разделения базы данных. На рис. 7.11 показан файл исходной базы данных.

Рис. 7.11. База данных со связанными таблицами

При проверке таблиц и их межтабличных связей в серверной базе данных (Копия Mountain Animal Hospital_be.mdb) можно убедиться в том, что все межтабличные связи и правила поддержки целостности данных также были автоматически скопированы в новую базу данных.