Соглашение | Публикация статей

Разделенная база данных Access
Категория: Статьи

Создавая свои первые базы данных в Access, начинающие разработчики обычно строят приложения, которые состоят из одного файла базы данных, то есть таблицы и формы расположены в одном и том же файле mdb. Однако Access позволяет помимо локальных приложений создавать и сетевые. Простейшим случаем такого приложения является разделенная база данных, включающая в себя два файла mdb: первый — файл объектов данных (в нем хранятся таблицы), второй — файл объектов приложения (в нем хранятся все остальные объекты — формы, запросы, отчеты, страницы доступа к данным, макросы и модули VBA). При этом в файле объектов приложения устанавливаются связи с таблицами, хранящимися в файле объектов данных.
Разделение базы данных дает следующие преимущества:

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

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

Надеюсь, что по поводу целесообразности разделения базы данных сомнений нет. Осталось решить вопрос, как же это сделать. Есть два варианта:

делаем новую пустую базу, жмем в окне базы правой кнопкой, выбираем в контекстном меню «Импорт» или «Файл – Внешние данные – импорт», и далее по диалогу. В результате в базу будут импортированы (скопированы) таблицы. Удаляем таблицы из базы, откуда делался импорт, и подключаем ее к таблицам новой базы.

делаем разделение базы при помощи мастера: «Сервис – служебные программы – разделение баз данных» и далее по диалогу.

Подключение же к «серверу» (базы с таблицами) делается очень просто – жмем правой кнопкой в окне базы объектов приложения (там, где формы и все остальное), выбираем в контекстном меню «Связь с таблицами» или «Файл – Внешние данные – Связь с таблицами» и далее по диалогу. В результате в нашей базе появятся ярлыки таблиц, причем со значком стрелки слева, который означает, что таблицы внешние. Ограничение при работе с такими таблицами – нельзя менять их структуру (добавлять, изменять поля и т. д.) в этой базе. Можно только в той, где они созданы (находятся).
Но лучше, если уж решили делать базу разделенной, при проектировании сразу же создавать две базы mdb: в одну помещаем таблицы, в другую все остальное.
Итак, база разделена. Напомню, основное преимущество разделения базы – возможность создания сетевого приложения. Представим: на одном из сетевых компьютеров создаем папку «База», открываем к ней общий доступ (нужно так же открыть доступ и к диску, на котором установлен Access, обычно «С»), и помещаем в нее файл объектов данных (базу с таблицами). На других компьютерах размещаем копии файлов объектов приложения (базу с формами, отчетами и т. д.) и подключаем их к нашему «серверу». Получилось сетевое приложение – много пользователей заносят данные в одну базу. Такое приложение называется «Файл – серверным», так как в качестве «сервера» выступает файл объектов данных.
Но допустим, по каким то причинам месторасположения «сервера» изменилось – папку «База» переместили. Как только пользователи запустят свои приложения, у них появится сообщение о том, что таблицы не найдены. В этом случае, жмем правой кнопкой по ярлыку таблицы в приложении пользователей, выбираем в контекстном меню «Диспетчер связанных таблиц», помечаем те таблицы, путь к которым нужно обновить, или жмем «Выделить все», затем «ОК» и далее по диалогу.

Статьи по теме:

Протокол Internet (IP)
Текстовый редактор Блокнот
Подсистема оборудования
Модемы и факс-модемы
Дата создания или изменения файла
Защита Информации. Пароли На Rar Архивы
Охранно-пожарные системы фирмы Satel теперь можно контролировать по телефону или Ethernet
Отложенная печать документов
LEP-дисплеи: день сегодняшний
WordPad: Поиск и замена слов по шаблону
Управление процессами
Версии языка Java. Средства разработки
Компьютерные Технологии И Генеалогия
ИСТОРИЯ РАЗВИТИЯ КОМПЬЮТЕРОВ
Главная загрузочная запись
Типы Даных В С++ И Отличия От Java
Программа 1С Зарплата И Управление Персоналом 8
ЧТО ТАКОЕ КОМПЬЮТЕР?
Зарождение кибернетики
ПЕРИФЕРИЙНЫЕ УСТРОЙСТВА
Открытие документа в процессе загрузки операционной системы
Модуль
Работа с дисками на физическом уровне
Описание программ SetFag.pas и Fag.asm
Зафиксируйте вниз с персональной информации на вашем компьютере
Отображение и скрытие значков
Возможности INTERNET
Антивирусные программы
Новое Решение На Рынке Soa
Маршрутизаторы NetGear
ЛАЗЕРНЫЕ (СВЕТОДИОДНЫЕ) ПЛОТТЕРЫ
Правовое регулирование отношений в области "компьютерной информации"
Ада и Си
Определение структурированной кабельной системы
Кибернетический подход
Смена поколений
Области применения программ обработки электронных таблиц
Соединение микропроцессоров
Обзор возможностей WinRAR 3.70 RU Final
Рынок электронной коммерции: сектор business-to-business
Структура СКС
Импорт файлов в проект
Проблемы формирования информационного общества в Украине
Текст программы на языке Basic
Настройка интерфейса редактора Paint
Google о вредоносных программах Интернета
Планирование в операционной системе UNIX
Перемещение данных в рабочем листе
Микротравмы
Средства разработки
Причины кибернетики
Установка охранных систем - актуальность возросла!
Архитектура модулей центральных CompactPCI-процессоров INOVA
Поочередное построение дочерних вершин
Бесплатный софт для всех!