Организация многопользовательского режима работы базы данных средствами MS Access. Усманова И.В

Организация многопользовательского доступа к данным

Организация многопользовательского режима работы базы данных средствами MS Access. Усманова И.В

к библиотеке   3GL   к СУБД   к алгоритмизации

4.1. Проблема многопользовательского доступа и параллельной обработки данных в автоматизированных информационных системах
4.2. Основные направления развития технологии клиент-сервер
4.3. Организация защиты данных в СУБД MS Access

Проблема многопользовательского доступа и параллельной обработки данных в автоматизированных информационных системах

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

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

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

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

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

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

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

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

Для различных СУБД конкретные технические решения по реализации аппарата блокировок существенно различаются. В MS Access, в частности, при изменении записи одним пользователем по умолчанию происходит ее автоматическая блокировка вплоть до момента завершения операции. При создании форм, отчетов или запросов в Access предусмотрены возможности задания параметров режима блокировки. На рис. 7.34 показан процесс изменения свойства Блокировка записей для формы.

Рис. 7.34. Задание режима блокировки для данных, доступных из формы

Как видно из рисунка, свойство Блокировка записей может принимать значения: — Отсутствует — допускается одновременное изменение записей со стороны нескольких пользователей.

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

Очевидно, что в таком режиме сохраняется максимальная свобода действий пользователей, «платой» за которую являются возможные конфликты ввиду несогласованности их действий. — Всех записей — происходит блокировка всех записей в источнике данных при его открытии одним из пользователей, в результате чего он может беспрепятственно изменять его.

Другие пользователи имеют доступ только на чтение (просмотр). — Изменяемой записи — один из пользователей получает доступ на изменение нужной ему записи, а другие пользователи могут только читать содержащиеся в ней данные. Данный режим накладывает минимальные ограничения на совместную работу.

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

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

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

Среди задач администрирования могут быть названы: — создание системы пользователей и разделение прав доступа различных пользователей к объектам СУБД; — организация и поддержание системы резервного хранения информации и ее восстановления в случае программных и аппаратных сбоев; — мониторинг программных и аппаратных ресурсов, задействованных для обеспечения работы СУБД, и принятие на его основе решений по оптимизации их использования. Некоторые вопросы, связанные с организацией системы пользователей СУБД, будут рассмотрены в 7.4.3. Первые многопользовательские СУБД имели централизованную архитектуру и базировались на больших компьютерах или мини-ЭВМ. Рабочие места пользователей располагались на терминалах, подключенных к центральному компьютеру, ria котором выполнялись все процессы по манипуляции с данными. Однако с распространением персональных компьютеров особую актуальность приобрели СУБД, реализующие технологии распределенной обработки данных, то есть такие технологии, которые позволяют вести одновременную работу с нескольких относительно ограниченных по аппаратным возможностям машин, объединенных в ceть. В этом случае одна часть функций СУБД выполняется на компьютере-клиенте, а другая — на компьютере-сервере, причем их взаимодействие осуществляется через некоторый согласованный протокол. Исторически первая технология распределенной работы с данными получила название файл-сервер (FS-модель). В ее рамках предполагается, что один из компьютеров в сети является файловым сервером и предоставляет свои ресурсы по обработке файлов другим компьютерам, на нем также располагается хранилище данных. На других компьютерах имеется прикладное программное обеспечение, реализующее функции пользовательского интерфейса доступа к данным, и копия процессора базы данных (СУБД). Всякий раз, когда прикладная программа обращается к базе, процессор данных обращается к файловому серверу. В ответ файловый сервер направляет по сети требуемый блок данных, получив который, СУБД осуществляет действия, декларированные в прикладной программе. Протокол обмена между серверным и клиентскими компьютерами представляет собой набор низкоуровневых вызовов, обеспечивающих интерфейсному приложению доступ к файловой системе сервера. Технологические недостатки FS-модели вытекают из внутренне присущих ей ограничений. Среди них в первую очередь следует назвать: — высокий сетевой трафик, обусловливаемый необходимостью передавать большое количество файловых блоков от сервера к приложениям; — ограниченный набор допустимых действий по обработке данных на файловом сервере, который не способен «понимать» внутреннюю логическую структуру базы данных и воспринимает эту базу так же, как и любой другой файл; — отсутствие надежных средств обеспечения безопасности работы с данными — допускается защита только на уровне функций сетевой операционной системы.

Перечисленные проблемы определяют то, что СУБД, основанные на технологии файл-сервер, могут применяться только в очень ограниченных масштабах. Например, при создании коллективных информационных систем, рассчитанных на небольшое количество пользователей и ограниченные информационные потоки. Одновременно следует отметить, что FS-модель положена в основу архитектур подавляющего большинства настольных СУБД, таких как FoxPRO, Clipper, Clarion, Paradox, Access, завоевавших широкую популярность среди отечественных разработчиков.

7.4.2. Основные направления развития технологии клиент-сервер
Работа по преодолению недостатков, органически присущих системам файл-ceрвер, привела к появлению более прогрессивной технологии, получившей название — сервер. Ее принципиальные отличия показаны на рис. 7.35.

a

b

Рис. 7.35. Принципиальная схема технологий файл-сервер(a) и клиент- сервер(b)

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

К настоящему моменту можно назвать ряд этапов, которые технология клиент-сервер прошла в своем развитии: RD А-модёль, DBS-модель и AS-модель. В RDA-модели клиентское приложение направляет запросы (как правило, на языке SQL) к информационным ресурсам сервера, на котором функционирует ядро СУБД.

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

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

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

Как правило, языки, на которых создаются хранимые процедуры, представляют собой процедурные расширения языка SQL На настоящий момент не существует единого стандарта для таких языковых средств; поэтому они являются специфичными для каждой конкретной СУБД.

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

К традиционным проблемам, связанным с DBS-моделью, относят трудности, сопутствующие процессам создания, отладки и тестирования хранимых процедур. О популярности и перспективности данной модели свидетельствует прежде всего то, что она реализована в таких широко используемых реляционных СУБД, как Oracle, Sybase, Informix, Ingres.

В AS-модели процесс, выполняющийся на компьютере-клиенте, называется клиентом приложения (Application Client — А С) и отвечает за интерфейс с пользователем. В случае необходимости выполнить те или иные прикладные операции он обращается к серверу приложения (Application Server — AS).

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

Само по себе ядро базы данных Jet, как уже упоминалось ранее, не является процессором, поддерживающим технологию клиент-сервер. Однако с помощью Access можно создавать соответствующие приложения, связываясь с клиент-серверными источниками данных через ODBC.

7.4.3. Организация защиты данных в СУБД MS Access
Непременной функцией любой развитой СУБД является обеспечение защиты данных от несанкционированного доступа.

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

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

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

Кроме того, можно удалить изменяемую программу Visual Basic из базы данных, чтобы предотвратить изменения структуры форм, отчетов и модулей, сохранив базу данных как файл MDE. Установка пароля на открытие базы данных представляет собой простейший способ защиты.

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

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

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

— задание прав доступа различных пользователей и групп по отношению к объектам базы данных (Сервис > Защита > Разрешения).

Рис. 7.36. Задание системы пользователей

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

При запуске Access от пользователей требуется идентифицировать себя и ввести пароль. Отдельные пользователи могут объединяться в группы, причем один и тот же пользователь может являться членом различных групп.

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

Допускается также определение других групп. Процесс создания системы пользователей и определения их принадлежности к группам показан на рис. 7.36.

Рис. 7.37. Задание прав пользователей

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

По умолчанию члены группы Admins имеют все разрешения на доступ ко всем объектам базы данных. Поскольку группа Users объединяет всех пользователей то ей имеет смысл присваивать некоторый минимальный набор прав.

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

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

к библиотеке   3GL   к СУБД   к алгоритмизации

Знаете ли Вы, что такое «Большой Взрыв»?Согласно рупору релятивистской идеологии Википедии «Большой взрыв (англ. Big Bang) — это космологическая модель, описывающая раннее развитие Вселенной, а именно — начало расширения Вселенной, перед которым Вселенная находилась в сингулярном состоянии. Обычно сейчас автоматически сочетают теорию Большого взрыва и модель горячей Вселенной, но эти концепции независимы и исторически существовало также представление о холодной начальной Вселенной вблизи Большого взрыва. Именно сочетание теории Большого взрыва с теорией горячей Вселенной, подкрепляемое существованием реликтового излучения…»В этой тираде количество нонсенсов (бессмыслиц) больше, чем количество предложений, иначе просто трудно запутать сознание обывателя до такой степени, чтобы он поверил в эту ахинею.На самом деле взорваться что-либо может только в уже имеющемся пространстве.Без этого никакого взрыва в принципе быть не может, так как «взрыв» — понятие, применимое только внутри уже имеющегося пространства. А раз так, то есть, если пространство вселенной уже было до БВ, то БВ не может быть началом Вселенной в принципе. Это во-первых.Во-вторых, Вселенная — это не обычный конечный объект с границами, это сама бесконечность во времени и пространстве. У нее нет начала и конца, а также пространственных границ уже по ее определению: она есть всё (потому и называется Вселенной).В третьих, фраза «представление о холодной начальной Вселенной вблизи Большого взрыва» тоже есть сплошной нонсенс.

Что могло быть «вблизи Большого взрыва», если самой Вселенной там еще не было? Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМАРыцари теории эфира

Источник: http://bourabai.ru/einf/subd4.htm

Способы совместного использования базы данных Access

Организация многопользовательского режима работы базы данных средствами MS Access. Усманова И.В

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

Общие сведения о способах предоставления доступа к данным Access

Предоставление общего доступа к одной базе данных

Совместное использование разделенной базы данных

Предоставление общего доступа к данным на сайте SharePoint

Предоставление общего доступа к данным с помощью сервера баз данных

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

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

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

К началу страницы

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

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

Может также снижаться производительность, поскольку все объекты базы данных пересылаются по сети.

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

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

  1. В домашних и малых офисных средах предоставьте общий доступ к папке с определенными людьми. Дополнительные сведения можно найти в разделе Общий доступ к файлам в сети в Windows 10.

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

    1. Запустите Access и на вкладке Файл выберите пункт Параметры.

    2. В окне Параметры Access выберите пункт Параметры клиента.

    3. В разделе Дополнительно в разделе режим открытия по умолчаниювыберите общий доступ, нажмите кнопку ОКи закройте Access.

  3. Скопируйте файл базы данных в общую папку. Затем настройте атрибуты файла таким образом, чтобы разрешить доступ к файлу базы данных для чтения и записи. Для использования базы данных необходим доступ к ней с правами на чтение и запись.

  4. На компьютере каждого пользователя создайте ярлык для файла базы данных. Дополнительные сведения можно найти в разделе Создание ярлыка на рабочем столе для программы или файла Office.

К началу страницы

Этот способ целесообразен при отсутствии сайта SharePoint или сервера базы данных. Вы можете предоставить общий доступ к разделенной базе данных в локальной сети.

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

Каждый пользователь взаимодействует с данными с помощью локальной копии внешней базы данных.

Ниже перечислены преимущества разделения базы данных.

  • Повышенная производительность    В сети используются только данные, а не таблицы, запросы, формы, отчеты, макросы и модули.
  • Повышенная доступность    Транзакции базы данных, например редактирование записей, выполняются быстрее.
  • Улучшенная безопасность.    Пользователи получают доступ к серверной базе данных через связанные таблицы; вероятность того, что злоумышленники могут получить несанкционированный доступ к данным через клиентскую базу данных, менее высока.
  • Повышенная надежность    Если пользователь сталкивается с проблемой, а база данных неожиданно закрывается, то любое повреждение файла базы данных обычно ограничивается копией клиентской базы данных, открытой пользователем.
  • Гибкая среда разработки    Каждый пользователь может независимо разрабатывать запросы, формы, отчеты и другие объекты базы данных, не влияя на работу других пользователей. Кроме того, вы можете разрабатывать и распространять новую версию клиентской базы данных, не нарушая доступ к данным, хранящимся в серверной части базы данных.

Дополнительные сведения можно найти в разделе разделение базы данных Access.

К началу страницы

Есть несколько способов предоставления доступа к данным Access на сайте SharePoint.

  • Связывающ    Процесс связывания подключается к данным в другой программе, так что вы можете просматривать и редактировать последние данные в SharePoint и Access, не создавая и не сохраняя копии данных в Access. Если вы не хотите копировать список SharePoint в базу данных Access, но вместо этого вы хотите выполнять запросы и создавать отчеты на основе содержимого этого списка, вы можете создать ссылку на данные.
  • Местив    Когда вы перемещаете данные из Access на сайт SharePoint, вы создаете списки на сайте SharePoint, которые остаются связанными с таблицами в базе данных. Мастер экспорта таблиц в SharePoint позволяет одновременно перемещать данные из всех таблиц и поддерживать их связь.

Дополнительные сведения можно найти в разделе Импорт, связывание и перемещение данных в SharePoint.

Об    Несмотря на то что вы можете сохранить файл базы данных Access в OneDrive или библиотеку документов SharePoint, не рекомендуется открывать базу данных Access из этих папок. Файл может быть загружен локально для редактирования, а затем снова передан после сохранения изменений в SharePoint.

Если вы открываете базу данных Access из SharePoint несколькими пользователями, может возникнуть несколько копий базы данных, что может привести к неожиданному поведению. Эта рекомендация применима ко всем типам файлов Access, включая одну базу данных, разделенную базу данных и форматы файлов ACCDB, ACCDC, ACCDE и ACCDR.

Дополнительные сведения о развертывании Access можно найти в разделе развертывание приложения Access.

К началу страницы

Совместное использование базы данных можно организовать с помощью приложения Access и сервера баз данных (например, сервера SQL Server). Этот способ обеспечивает много преимуществ, но для него требуется дополнительное программное обеспечение — сервер баз данных.

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

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

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

Дополнительные сведения можно найти в разделе Миграция базы данных Access в SQL Server, Импорт или связывание данных в базе данных SQL Server, а также связывание или импорт данных из базы данных Azure SQL Server.

Преимущества совместного использования базы данных с помощью сервера баз данных

  • Высокая производительность и масштабируемость    Во многих случаях сервер базы данных повышает производительность, чем единственный файл базы данных Access. Многие серверные продукты баз данных также обеспечивают поддержку очень больших баз данных размером примерно в 500 в течение интервала (2 ГБ) для файла базы данных Access (два гигабайта). Продукты сервера баз данных обычно работают очень эффективно, параллельно обрабатывая запросы (используя несколько собственных потоков в одном процессе для обработки запросов пользователей), а также свести к минимуму дополнительные требования к памяти при добавлении новых пользователей.
  • Повышенная доступность    Большинство серверных продуктов базы данных позволяют создавать резервные копии базы данных во время ее использования. Таким образом, пользователям не нужно принудительно закрывать базу данных для резервного копирования данных. Более того, сервер баз данных обычно обрабатывает параллельное редактирование и блокировку записей очень эффективно.
  • Повышенная безопасность    Невозможно полностью защитить базу данных. Тем не менее, серверные продукты базы данных предлагают надежную защиту, которая поможет вам защитить ваши данные от несанкционированного использования. Большинство серверных продуктов баз данных предлагают безопасность на основе учетных записей, позволяя указать, кто может видеть, какие таблицы. Даже в случае неправильного получения доступа к интерфейсу, несанкционированное использование данных запрещено защитой на основе учетной записи.
  • Автоматические возможности восстановления    В случае сбоя системы (например, аварийного завершения работы операционной системы или отключения питания) некоторые серверные продукты баз данных имеют механизмы автоматического восстановления, которые восстанавливают базу данных до последнего состояния согласованности в течение минут, без администратора базы данных. участвовать.
  • Обработка на сервере    Использование Access в конфигурации клиента и сервера помогает уменьшить сетевой трафик, обрабатывая запросы к базе данных на сервере перед отправкой результатов клиенту. Обработка сервером обычно более эффективна, особенно при работе с большими наборами данных.
  • Azure SQL Server    Помимо преимуществ SQL Server, обеспечивает динамическую масштабируемость без простоев, интеллектуальной оптимизации, глобальной масштабируемости и доступности, исключения аппаратных затрат и сокращенного администрирования.

К началу страницы

Примечание:  Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

Источник: https://support.office.com/ru-ru/article/%D0%A1%D0%BF%D0%BE%D1%81%D0%BE%D0%B1%D1%8B-%D1%81%D0%BE%D0%B2%D0%BC%D0%B5%D1%81%D1%82%D0%BD%D0%BE%D0%B3%D0%BE-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-%D0%B1%D0%B0%D0%B7%D1%8B-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-access-03822632-da43-4d8f-ba2a-68da245a0446

Особенности работы с базами данных (БД) в многопользовательском режиме

Организация многопользовательского режима работы базы данных средствами MS Access. Усманова И.В

Введение

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

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

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

Целью данной курсового проекта является «Разработка базы данных «Библиотека».

Задачами для достижения поставленной цели являются:

1.Рассмотреть особенности работы с БД в многопользовательском режиме.

2.Разработать БД «Библиотека»

3.Дать характеристику предметной области

4.Разработать информационное обеспечение БД

5.Разработать программное обеспечение БД

6.Составить инструкцию пользователя

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

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

Программируя на языке VBA, можно создавать такие мощные программы, как сама система Access.

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

Прежде чем приступить к работе с каким-либо программным продуктом, важно понять его возможности и типы задач, для решения которых он предназначен.

Microsoft Access (далее — просто Access) — это многогранный продукт, использование которого ограничено только воображением пользователя.

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

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

Access поддерживает все необходимые типы полей, в том числе текстовый, числовой, счетчик, денежный, дата/время, MEMO, логический, гиперссылка и поля объектов OLE.

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

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Особенности работы с базами данных (БД) в многопользовательском режиме.

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

Конфликты доступа

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

Подавление сообщений об ошиб­ках, недостаточное внимание к подобным вопросам либо надежда на благоприятное стечение обстоятельств не решает проблему.

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

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

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

• Изменения существующих записей не сохраняются. Пользователь может даже не заметить, что вне­сенные им изменения не сохранились.

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

Подобные серьез­ные проблемы вполне могут оказаться не выявленными вовремя. Как правило, от них страдают посторонние люди.

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

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

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

Конфигурация

Для обслуживания нескольких пользователей приложение Access необходимо на файловом уровне кон­фигурировать по-разному. Каждый способ имеет свои преимущества и недостатки, некоторые из них пе­речисляются ниже.

• Сетевое размещение. В данной конфигурации единый MDB-файл располагается на сетевом серве­ре, и пользователи получают доступ к базе данных при обращении к серверу.

Данные и выполня­емые модули могут содержаться в едином MDB-файле либо размещаться на файловом сервере в виде нескольких отдельных файлов. Преимуществом данной конфигурации является простота поддержки, поскольку при необходимости в обновлении нуждается лишь выполняемый файл.

Однако, поскольку все формы, отчеты, модули, запросы, ЕХЕ-файлы Access, а также все библиотеки DLL и т.п. должны передаваться по сети на рабочую станцию, сетевой трафик неоправданно возрастает, а производительность значительно снижается.

Вероятно, в подобных конфигурациях следует исполь­зовать связанные формы. Далее рассматриваются проблемы связывания форм с данными и возни­кающие при этом конфликты доступа.

• Разделенная база данных с размещенными в сети данными.

Такая конфигурация по традиции на­зывается конфигурацией удаленной базы данных (отметим, что значение слова «удаленная» в чрез­вычайно динамичную эпоху Internet постепенно меняется и вскоре может устареть), поскольку данные отделены от выполняемого модуля или программного кода, хотя механизм баз данных и остается локальным.

В отличие от конфигурации клиент-сервер, механизм баз данных Access на пользовательском ПК получает, обрабатывает, блокирует и снимает блокировку с данных, находя­щихся в MDB-файле на сетевом сервере.

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

Его преимуществом является высо­кая производительность и управляемость при корректном использовании. Поскольку при размеще­нии данных в сети по каналам связи передаются только они, сетевой трафик значительно снижается. Основной недостаток данной конфигурации заключается в том, что на каждом клиентском ПК необходимо устанавливать Access и выполняемый MDE- (скомпилированный вариант базы данных MDB) либо MDB-файл, что осложняет поддержку приложения. Тем не менее, существуют спосо­бы решения подобной проблемы.

• Репликация. При использовании схемы репликации пользователи совместно обрабатывают данные, хотя данные на самом деле не являются общими, как это имеет место в схемах сетевого распре­деления или в разделенных базах данных.

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

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

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

• Конфигурация клиент-сервер. В Access 2000 появилась новая возможность создания клиент-сервер­ных приложений на базе проекта Microsoft Access. В такой конфигурации удаленными являются как данные, так и механизм баз данных.

Если данными управляет SQL Server, Oracle или какой-либо иной сервер баз данных, расположенный на центральном компьютере, он также решает вопросы блокировки и проблемы работы в многопользовательской среде.

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

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

В данной главе рассматриваются вопросы, которые являются общими для сетевых конфигураций: схе­мы разделенной базы данных и реализации архитектуры клиент-сервер. О репликации рассказывается в главе 22.

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

В различных частях приложения представлены почти все обсуждаемые в главе темы. Как для разных приложений, так и в пределах одной программы возможно применение разных технологий, а также их комбинаций.

Основой организации работы в многопользовательской среде является планирование, прогнозирование и тестирование.

Access и способы блокировки в Jet

Механизм Jet имеет схему блокировки, которая позволяет эффективно обслуживать несколько пользо­вателей. При использовании Jet с Access, а не с VB или каким-либо иным инструментом разработки необходимо учитывать, что некоторые действия выполняются по умолчанию. Данный раздел посвящен изучению этих вопросов.

Основные сведения о блокировке

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

В диалоговом окне Options (Параметры), отображающемся при выполнении команд меню Tools Options (Сервис / Параметры), во вкладке Advanced (Другие) имеется параметр Default open mode (Режим откры­тия, определенный по умолчанию). Здесь можно определить режим открытия базы данных, т.е. должна ли она открываться для монопольного доступа (только для одного пользователя на весь сеанс работы) или для общего доступа.

Если выбран режим Exclusive (монопольный доступ), базу данных имеет право открывать только один пользователь. В этом случае Access изменяет заголовок LDB-файла, тем самым блокируя его (подробнее об этом см.

в разделе «LDB-файл») и запрещая доступ к данным для всех других пользователей. Очевид­но, для многопользовательского приложения такая настройка использоваться не должна.

Однако такие процедуры, как сжатие и восстановление, следует выполнять над базой данных, открытой для монополь­ного доступа.

Режим Shared (Общий доступ) позволяет открывать базу данных нескольким пользователям одновре­менно. При этом Access в момент открытия базы данных заносит информацию о подключившихсяк нейпользователях в LDB-файл и задействует механизм блокировки и освобождения страниц и строк

Не нашли то, что искали? Воспользуйтесь поиском:

Источник: https://studopedia.ru/19_81750_osobennosti-raboti-s-bazami-dannih-bd-v-mnogopolzovatelskom-rezhime.html

Biz-books
Добавить комментарий