Краткие теоретические сведения. СУБД Microsoft Access — наиболее широко используемая в среде Microsoft Windows реляционная СУБД, Microsoft Access — типичная СУБД для персональных
СУБД Microsoft Access — наиболее широко используемая в среде Microsoft Windows реляционная СУБД, Microsoft Access — типичная СУБД для персональных компьютеров, обеспечивающая хранение, сортировку и поиск данных для множества приложений.
В СУБД Access для создания таблиц, запросов, форм и отчетов предусмотрен графический интерфейс пользователя (Graphical User Interface — GUI); для разработки настраиваемых приложений с базой данных есть инструментальные средства, использующие макроязык Microsoft Access или язык VBA (Microsoft Visual Basic for Applications). Кроме того, в СУБД Access предусмотрены программы, называемые мастерами (Wizards), которые упрощают многие из процессов формирования приложений с базой данных, проводя пользователя через ряд диалоговых окон в запросно-ответном режиме.
В СУБД Access предусмотрены также конструкторы (Builders), которые могут помочь пользователю сформировать синтаксически правильные выражения, например операторы и макрокоманды языка SQL.
СУБД Access поддерживает значительную часть стандарта языка SQL, а также стандарт Microsoft ODBC (Open Database Connectivity — открытый интерфейс доступа к базам данных), обеспечивающий общий интерфейс для доступа к разнотипным базам данных SQL, таким как Oracle и Informix.
2.1 Объекты
Пользователь взаимодействует с Microsoft Access и разрабатывает приложение базы данных, используя ряд объектов.
Таблицы — базисные таблицы, которые составляют базу данных. По терминологии Microsoft таблица организована в столбцы (называемые полями)и строки (называемые записями).
Запросы — позволяют пользователю просматривать, изменять и анализировать данные различными способами. Запросы могут также запоминаться и использоваться в качестве источника записей для форм, отчетов и страниц доступа к данным.
Формы — можно использовать для ряда целей, например для создания форм ввода данных в таблицу.
Отчеты— представляют данные в базе данных в требуемом для печати формате.
Страницы (доступа к данным) — представляют собой специальный тип Web-страниц, разработанных для просмотра и работы с данными (хранящимися в базе данных Microsoft Access или в базе данных Microsoft SQL Server) из Internet или из локальной корпоративной сети (внутренней сети). Страница доступа к данным может также включать данные из других источников, например из Microsoft Excel.
Макросы — это одно действие или набор действий, выполняющих конкретные операции, например открытие формы или печать отчета. С помощью макросов можно автоматизировать стандартные задачи, например печать отчета будет выполняться после щелчка пользователя на кнопке.
Модули — это совокупность объявлений и процедур языка VBA, которые хранятся как единое целое.
Прежде чем перейти к более подробному обсуждению этих объектов, необходимо рассмотреть структуру СУБД Microsoft Access.
2.2 Структура СУБД Microsoft Access
СУБД Microsoft Access может использоваться как автономная система на одном персональном компьютере или как многопользовательская система в сети,
В СУБД Access 2000 предоставляется выбор из двух машин баз данных (data engines): первоначальной версии машины базы данных Jet и новой — Microsoft Data Engine (MSDE), которая совместима с Microsoft BackOffice SQL Server (продуктом компании Microsoft для администрирования локальных корпоративных сетей). Машина базы данных Jet хранит все данные приложения, такие как таблицы, индексы, запросы, формы и отчеты, в одном файле базы данных с расширением . mdb, организованным с использованием метода ISAM (Indexed Sequential Access Method — индексно-последовательный метод доступа).
В основе MSDE лежит та же машина базы данных, что и в СУБД Microsoft SQL Server, предоставляющая пользователям возможность писать масштабируемые приложения на компьютере с системой Windows 95, которые затем можно перенести в высокопроизводительные многопроцессорные кластеры (группы компьютеров), работающие под управлением системы Windows 2000 Server. Машина MSDE предоставляет также процедуру преобразования данных, позволяющую пользователям впоследствии наращивать вычислительные возможности до уровня SQL Server. Но в отличие от SQL Server 7.0 MSDE имеет ограничение на размер базы данных в 2 гигабайта.
Microsoft Access, как и SQL Server, делит данные, хранящиеся в ее табличных структурах, на страницы данных размером в 2 килобайта, что соответствует размеру стандартного кластера файла жесткого диска в DOS. Каждая страница содержит одну или несколько записей. Запись не может занимать больше одной страницы, хотя записи Memo (поля примечаний) и поля объектов OLE могут храниться на отдельных страницах. СУБД Access использует в качестве стандартного способа хранения записи переменной длины и упорядочивает записи с помощью индекса первичного ключа. При использовании формата хранения записей с переменной длиной каждая запись занимает только пространство, необходимое для хранения ее фактических данных.
Для создания списка связей страниц данных к каждой странице добавляется заголовок. Заголовок содержит два указателя: на предыдущую и на следующую страницу. Если индексы не используются, новые данные добавляются на последнюю страницу таблицы до тех пор, пока страница не будет полной, а затем в конец добавляется еще одна страница. Одним из преимуществ страниц данных с собственными заголовками является то, что страницы данных таблицы могут храниться в индексированном виде (в соответствии с методом доступа ISAM), т.е. в случае необходимости изменяются указатели в заголовке страницы, а не сама структура файла.
Средства обеспечения многопользовательского режима работы
Microsoft Access обеспечивает четыре основных способа работы с базой данных в сети.
Реализация файл/сервер. База данных Access располагается в сети таким образом, чтобы пользователи могли использовать ее совместно. В этом случае на каждой рабочей станции эксплуатируется отдельная копия приложения Access.
Реализация клиент/сервер. В более ранних версиях СУБД Access для достижения этого необходимо было создавать связанные таблицы, которые использовали драйвер ODBC для связи с базой данных, такой как SQL Server. В Access 2000 также может быть создан файл с расширением adp (Access Project File), в котором могут храниться локально формы, отчеты, макрокоманды и модули VBA и который может соединяться с удаленной базой данных SQL Server, используя технологию OLE DB для отображения и работы с таблицами, представлениями, связями и хранимыми процедурами. Как было упомянуто выше, в такой реализации может также использоваться машина базы данных MSDE.
Реализация на основе репликации базы данных. Эта реализация обеспечивает распространение изменений в данных или в проекте базы данных по разным копиям базы данных Access на разных хостах сети. В передаче ко
пии всей базы данных нет необходимости. Репликация включает в себя создание одной или нескольких копий, называемых точными копиями (replica) единой первоначальной базы данных, которая называется проектным эталоном (Design Master). Вместе проектный эталон и его точные копии называются набором точных копий (replica set). При выполнении так называемого процесса синхронизации изменения в объектах и данных передаются всем элементам набора точных копий. Изменения в проекте объектов могут быть сделаны только в проектном эталоне, но изменения в данные можно вносить из любого элемента набора точных копий.
Реализация базы данных на основе Web. Браузер (средство навигации и просмотра) отображает одну или несколько страниц доступа к данным, которые динамически связываются с совместно используемой базой данных
Access или SQL Server. Для отображения этих страниц применяется браузер Internet Explorer 5 или его следующие версии/
Если база данных постоянно хранится на файловом сервере, то при модификации записи таблицы для блокировки страниц используются блокировочные примитивы операционной системы. В многопользовательской среде машина базы данных Jet использует файл с расширением . ib (сокращение от locking database file — файл блокировки базы данных), чтобы сохранить информацию о том, какие записи заблокированы и каким пользователем. Файл блокировки базы данных создается тогда, когда база данных открыта для коллективного доступа.
2.3 Описание таблицы
Microsoft Access предоставляет пять способов создания новой (пустой) таблицы.
§ Использование мастера Database Wizard (Мастер базы данных) для создания в одной операции всех таблиц, форм и отчетов, необходимых для базы данных. Мастер Database Wizard служит для создания новой базы данных, но не может быть использован для добавления новых таблиц, форм или отчетов к существующей базе данных.
§ Использование мастера Table Wizard (Мастер таблицы) для выбора полей
таблицы из ряда заранее определенных таблиц, например, с данными о де
ловых контактах, домашнем хозяйстве или медицинских карточках.
§ Ввод данных непосредственно в пустую таблицу (называемую таблицей данных — datasheet). После сохранения новой таблицы данных СУБД Access анализирует данные и автоматически назначает для каждого поля соответствующий тип данных и формат.
§ Использование представления Design View (Конструктор) для исчерпывающего определения с самого начала всей таблицы.
§ Использование оператора CREATE TABLE (Создать таблицу) в представлении SQL View.
Создание пустой таблицы в Microsoft Access с использованием языка SQL
В предыдущих лабораторных работах был рассмотрен оператор языка SQL CREATE TABLE, используемый для создания таблицы. СУБД Microsoft Access 2000 не полностью соответствует, стандарту языка SQL, а оператор CREATE TABLE базы данных Access не поддерживает конструкции DEFAULT и CHECK. Впрочем, значения по умолчанию и некоторые ограничения предметной области могут все еще определяться вне языка SQL, как описано ниже. Кроме того, как видно из таблицы 1, типы данных Access немного не соответствуют стандарту языка SQL.
Создание пустой таблицы в Microsoft Access средствами представления Design View
На рис. 1 показано создание таблицы Оборудование КЦ средствами представления Design View (Конструктор). Независимо от того, каким методом создавалась таблица, таблица представления Design View может использоваться в любое время для ее дальнейшей настройки, например для добавления новых полей, установки значений по умолчанию или создания входных масок.
Microsoft Access обеспечивает средства добавления ограничивающих условий для таблицы с помощью раздела Field Properties (Свойства поля) таблицы представления Design View. Каждое поле имеет набор свойств, использующихся для выбора способов хранения, управления или отображения данных в поле. Например, можно управлять максимальным числом символов, которые могут быть введены в текстовое поле, устанавливая свойства Field Size (Размер > Тип данных поля определяет свойства, которые являются доступными для этого поля. Установка свойств поля в представлении Design View дает гарантию того, что поля будут иметь непротиворечивые установочные параметры для формирования форм и отчетов на более позднем этапе. Все свойства полей кратко рассматриваются ниже.
2.4. Связи и определение ссылочной целостности
В СУБД Microsoft Access связи могут создаваться при помощи оператора CREATE TABLE языка SQL. Связи могут также создаваться в окне конструктора связей Relationships (Схема данных). Для создания связи необходимо отобразить таблицы, между которыми создается связь, а затем перетащить курсор от поля первичного ключа родительской таблицы к полю внешнего ключа дочерней таблицы. После этого Access отобразит окно для определения ограничений ссылочной целостности.
На рис.2. показано диалоговое окно ввода ограничения ссылочной целостности, которое отображается при создании связи "один ко многим" (1:*), а на рис.3 показано окно конструктора связей Relationships после создания связи. При установке ограничений ссылочной целостности в Microsoft Access следует обратить внимание на два обстоятельства.
1, Связь "один ко многим" (I:*) создается только в том случае, если одно из связанных полей является первичным ключом или имеет уникальный индекс; связь "один к одниму" (1:1) создается в случае, если оба поля являются первичными ключами или имеют уникальные индексы.
2. Предусмотрены только две операции поддержки ссылочной целостности для модификации и обновления, которые соответствуют опциям NO ACTION и CASCADE. Поэтому, если требуются другие операции,
необходимо рассмотреть возможность изменения этих ограничений в соответствии с ограничениями, доступными в Access, или реализовать эти ограничения в коде приложения.
Рис. 2.
Рис. 3.
2.5. Определение ограничений предметной области
В Microsoft Access можно реализовать несколько способов создания ограничений предметной области, например, используя
§ правила проверки для полей;
§ правила проверки для записей;
§ проверку форм с помощью языка Visual Basic for Applications (VBA).
2.6. Формы
Формы Microsoft Access позволяют пользователю просматривать и редактировать данные, хранящиеся в основных таблицах базы данных, представляя данные в упорядоченном и настраиваемом виде.
Формы строятся как совокупность отдельных элементов, называемых элементами управления (controls) или управляющими объектами (control objects). Есть много типов элементов управления, например, таких как текстовые окна (text boxes) для ввода и редактирования данных, надписи (labels) для хранения имен полей, командные кнопки (command buttons) для инициализации некоторых действий пользователя. Элементы управления можно легко лобавить в форму и удалить из нее. Кроме того, чтобы помочь пользователю в добавлении к форме элементов управления, СУБД Access предоставляет мастера элементов управления Control Wizard,
Форма разделена на ряд разделов, из которых три основных приводятся ниже.
§ Заголовок формы (Form Header). Этот раздел определяет, что будет отображаться в верхней части каждой формы, например заголовок (title).
§ Характеристики (Detail). В этом разделе обычно отображается ряд полей в записи.
§ Нижний колонтитул формы (Form Footer), Этот раздел определяет, что будет отображаться в нижней части каждой формы, например итоги (total).
Это также применимо для форм, содержащих другие формы, называемых подчиненными формами (subforms).
Формы имеют три вида представлений: Design View {Конструктор), Form View (Режим формы) и Datasheet View (Режим таблицы).
СУБД Access дает возможность опытным пользователям создавать формы без какой либо помощи, с нуля. Тем не менее Access предоставляет также мастера формы (Form Wizard), который проводит пользователя через ряд диалоговых страниц для того, чтобы определить следующее:
1. что лежит в основе формы — таблица или запрос;
2. поля, которые нужно отобразить в форме;
3. макет для формы (колоночный, табличный, в виде таблицы данных или
выровненный);
4. стиль для формы, основанный на заранее определенном наборе опций;
5. заголовок для формы.
2.7. Отчеты
Отчеты Microsoft Access Reports — это специальный тип; непрерывных форм, разрабатываемых скорее для печати, чем для отображения на экране. К тому же отчет предоставляет доступ только для чтения к основным таблицам базы. Кроме того, Access Reports представляет пользователю возможность
§ сортировать записи;
§ группировать записи;
§ вычислять итоговую информацию;
§ управлять всем макетом и внешним видом отчета.
Так же как и представление для форм, представление Report's Design View разделено на ряд разделов, главными из которых являются следующие.
§ Заголовок отчета (Report Header). Аналогичен разделу заголовка формы, который определяет, что будет отображаться в верхней части каждой формы, например заголовок (title).
§ Колонтитул страницы (Page Header) определяет, что будет отображаться в верхней части каждой страницы отчета, например заголовки столбцов (column headings).
§ Характеристики (Detail) составляют основную часть отчета, например данные каждой записи.
§ Нижний колонтитул страницы (Page Footer) определяет, что будет отображаться внизу каждой страницы, например номер страницы.
§ Нижний колонтитул отчета (Report Footer) определяет, что будет отображаться внизу отчета, например суммы или усредненные значения, которые подводят итог информации в теле отчета.
Можно также разбить тело отчета на группы, включающие записи, которые совместно используют общее значение, и вычислять промежуточные суммы для группы. В этом случае в отчете применяются два дополнительных раздела:
§ Заголовок группы (Group Header) определяет, что будет отображаться в верхней части каждой группы, например имя поля, используемого для группирования данных.
§ Нижний колонтитул группы (Group Footer) определяет, что будет отображаться внизу каждой группы, например промежуточная сумма для группы.
СУБД Access дает возможность опытным пользователям создавать отчеты с нуля. Тем не менее СУБД Access включает также мастера отчетов (Report Wizard), который проводит пользователя через ряд диалоговых страниц для того, чтобы определить:
1. что лежит в основе отчета — таблица или запрос;
2. поля, которые нужно отобразить в отчете;
3. поля, которые нужно использовать для группирования данных в отчете наряду с промежуточными суммами, требуемыми для группы или групп;
4. поля, которые нужно использовать для сортировки данных в отчете;
5. макет отчета;
6. стиль для отчета, основанный на заранее определенном наборе опций;
7. заголовок отчета.
Дата добавления: 2015-05-16; просмотров: 1537;