Работа в многопользовательских средах

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

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

1) блокировку БД, файла, записи, поля;

2) идентификацию станции, установившей блокировку;

3) обновление информации после модификации;

4) контроль за временем и повторение обращения;

5) обработку транзакций (транзакция – последовательность операций пользователя над БД, которая сохраняет ее логическую последовательность);

6) работу с сетевыми системами.

 

Импорт – экспорт

Эта характеристика отражает:

1) возможность обработки СУБД информации, подготовленной доугими программными средствами;

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

 

Доступ к данным посредством языка SQL

Язык запросов SQL(Structured Query Language) реализован в целом ряде популярных СУБД для различных типов ЭВМ либо как базовый, либо как альтернативный. В силу своего широкого использования является международным стандартом языка запросов.

СУБД имеют доступ к данным SQL в следующих случаях:

1) БД совместимы с ODBC(Open Database Connectivy – открытое соединение баз данных)

2) Реализована естественная поддержка SQL – баз данных;

3) Возможна реализация SQL – запросов локальных данных.

 

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

СУБД, ориентированные на разработчиков, обладают развитыми средствами для создания приложений. К элементам инструментария разработки приложений можно отнести:

1) мощные языки программирования;

2) средства реализации меню, экранных форм ввода – вывода данных и генерации отчетов;

3) средства генерации приложений(прикладных программ);

4) генерацию исполнимых файлов.

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

 

Access 2000 входит в состав MS Office 2000, ориентирована на работу с объектами, к которым относятся таблицы, запросы, а также объекты приложений для работы с БД: формы, отчеты, страницы, макросы и модули.

 

Access может использовать данные различных СУБД, может обрабатывать файлы Paradox, FoxPro, Oracle,…

При соединении приложений пользователя так же используются средства программирования, реализуемые объектами другого типа – макросами и модулями на языке программирования Visual Basic Applications(VBA).

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

Объекты представлены в окне БД Access. Все операции по работе с объектами БД и приложений начинаются в этом окне.

 

Объекты Access

Таблицы(Tables) создаются для хранения данных об одном информационном объекте модели данных предметной области. Каждое поле содержит одну характеристику объекта предметной области. В записи собраны сведения об 1 экземпляре этого объекта.

Запросы(Queries) создаются для выборки нужных данных из одной или нескольких связанных таблиц. Результатом выполнения запроса является таблица, которая может быть использована наряду с другими таблицами БД при обработке данных. Запрос может формироваться в виде запросов по образцу (QBE) или с помощью инструкции SQL – языка структурированных запросов. С помощью запроса можно обновить, удалить добавить данные в таблицы или создать новые таблицы на основе уже существующих.

Формы(Forms) являются основным средством создания диалогового

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

Отчеты(Reports) – предназначены для формирования выходных документов, содержащих результаты решения задач пользователя, и вывода их на печать.

Страницы(Pages) доступа к данным является диалоговыми Web – страницами, которые поддерживают динамическую связь с БД и позволяют просматривать, редактировать и вводить данные в без., работая в окне приложения Web –страницах.

Макросы(Macros) является программой, которая содержит описание последовательности действий, выполняемых при поступлении некоторого события в объекте или элементе управления приложения. Каждое действие реализуется макрокомандой. Создание макросов осуществляется в диалоговом режиме путем выбора нужных макросов и задания параметров, используемых ими при выполнении.

Модули(Modules) содержат процедуры на языке VBA/ Могут создаваться процедуры – функции, которые разрабатываются пользователем для реализации нестандартных функций в приложении пользователя, и процедуры для обработки событий.

 

В Access 2000 для удобства пользователя объекты БД могут объединены в группы по функциональному признаку. Группы содержат ссылки на объекты БД различных типов.

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

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

При выполнении команды меню Сервис/Репликация – создать реплику Access присваивает БД статус основной реплики и создает одну новую реплику.

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

Если пользователи двух разных реплик по – разному изменяли одну и ту же запись, то при синхронизации реплик создается конфликтная таблица. Для просмотра и исправления конфликтных записей, следует выполнить команду Устранить конфликты. После проведения сеанса синхронизации работа с БД может продолжаться.

Обеспечение связной целостности данных означает, что Access при корректировке БД не допускает выполнения следующих операций:

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

2. В главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице.

3. Изменение значений ключа связи в записи главной таблице невозможно, если в подчиненной таблице имеются связанные с ней записи.

Задание параметров целостности данных возможно только если:

1) Связываемые поля имеют одинаковый тип данных, причем имена полей могут быть различными.

2) Главная таблица связывается с подчиненной по первичному ключу главной таблицы.

3) Главная таблица связывается с подчиненной по первичному ключу главной таблицы.

Если для встроенной связи обеспечивается поддержание целостности может задать 2 режима:

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

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

Мастера Access

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

Мастер подстановок создает в поле таблицы раскрывающийся список значений из поля другой таблицы для выбора и ввода нужного значения.

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

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

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

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

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

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

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

 

В меню Сервис – Анализ наряду с мастера представлены еще:

Анализатор Быстродействия, который позволяет проанализировать основные характеристики объектов БД или БД в целом и выдает рекомендации по их изменениям, для улучшения ее эффективности.

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

 

Мастер сводных таблиц вставляет сводную таблицу Excel в форму Access, используя Excel, чтобы создать объект «Сводная таблица» и Access, чтобы создать форму, в которую он вставляет объект.

Мастера по импорту таблиц и объектов вызываемые командой. Файл – Внешние данные – Импорт позволяет импортировать их из внешнего файла в текущую БД. Импортировать данные можно из файла другой БД Access, Excel, Paradox. Возможен импорт текстовых файлов и HTML таблиц.

Мастер связанных таблиц(Файл – Внешние данные – Связь с таблицами) создает в текущей БД таблицы, связанные с таблицами во внешних файлах, но в отличии от мастера по импорту, не размещает новую таблицу в файле БД, а только устанавливает связь с источником данных этой таблицы. Но связанная таблица доступна до тех пор, пока связь не разрушена по каким – либо причинам.

Мастер экспорта (Файл – Экспорт) позволяет экспортировать объекты БД в другие БД, в текстовые файлы, в различные электронные таблицы.

Мастер наклеек входит в группу мастеров создания отчетов. Автоматизирует процесс создания почтовых наклеек на основе данных таблицы или запроса и предлагает многочисленные шаблоны наклеек различных типов.

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

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

К мастерам еще относят 2 служебные программы:

– Convert Database(Преобразовать БД), которая позволяет конвертировать БД из предыдущих версий в текущую версию БД Access, и из текущей версии в предыдущую.

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

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

 

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

 

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

В режиме таблицы пользователь может создать таблицу, не определяя предварительно ее структуры. После выбора этого режима сразу открывается пустая таблица, в которую можно ввести данные. При сохранении этой таблицы Access проанализирует данные и автоматически присвоит соответствующий тип данных каждому полю, т.е. автоматически создает структуру таблицы. Таблица, предлагаемая Access, имеет 10 столбцов и 21 строку. Полем по умолчанию присваиваются имена полей Поле 1, Поле 2 и т.д. Все столбцы, оставленные пустыми, будут удалены при сохранении таблицы. Могут также увеличивать количество столбцов или уменьшать. Если в дальнейшем потребуется изменить определение поля, задать другой тип данных, формат, указать условие на значения, добавить новые поля, то эти действия можно выполнить в режиме конструктора.

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

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

В открытой таблице БД Access 2000 одновременно можно просматривать данные взаимосвязанных таблиц нескольких уровней. При просмотре таблицы, которая имеет простой ключ, только 1 подчиненную таблицу и в схеме базы данных между ними уже определена связь, отображается столбец со значками «+» в каждой записи. Щелчок на этом значке в строке записи отображает записи подчиненной таблицы, связанные с текущей записью. Т.о. могут быть открыты подчиненные записи каждой записи главной таблицы, разбиты на подмножества, связанные с конкретными записями главной таблицы.

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

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

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

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

Основы создания форм(Создание форм)

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

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

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