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

Что такое СУБД

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

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

Основные функции СУБД

СУБД Access выполняет следующие важные функции:

Осуществление необходимых и формулами;

Налаживание связей между таблицами и массивами данных;

Возможность добавления запросов.

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


Основные отличия СУБД Access

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

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

Возможности Access

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

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

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

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

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

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

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

2. Запрос. Объект, который позволяет пользователю получить нужные данные из одной или нескольких таблиц. Для создания запроса можно использовать бланк QBE (запрос по образцу) или инструкции SQL (структурированный язык запросов). Можно создать запросы на выборку, обновление, удаление или добавление данных. С помощью запросов можно также создавать новые таблицы, используя данные из одной или нескольких существующих таблиц.

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

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

5. Макрос. Объект, представляющий собой структурированное описание одного или нескольких действий, которые должен выполнить Access в ответ на определенное событие.

6. Модуль. Объект, содержащий программы, написанные на языке Visual Basic для приложений. Модули могут быть независимыми объектами, содержащими функции, вызываемые из любого места приложения, но они могут быть и непосредственно «привязаны» к отдельным формам или отчетам для реакции на те или иные происходящие в них изменения.

31. Понятие SQL-запроса .

SQL (Structured Query Language – структурированный язык запросов) с 1986г. является стандартным языком реляционных баз данных. В частности, он используется в приложениях Access и Excel.

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

Запрос на языке SQL состоит из инструкций. Каждая инструкция может содержать несколько предложений.

32. Алгоритм. Основные алгоритмические конструкции

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

Различные определения алгоритма в явной или неявной форме содержат следующий ряд общих требований:

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

    Детерминированность (определённость). В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. Таким образом, алгоритм выдаёт один и тот же результат (ответ) для одних и тех же исходных данных. В современной трактовке у разных реализаций одного и того же алгоритма должен быть изоморфный граф. С другой стороны, существуют вероятностные алгоритмы, в которых следующий шаг работы зависит от текущего состояния системы и генерируемого случайного числа. Однако при включении метода генерации случайных чисел в список «исходных данных» вероятностный алгоритм становится подвидом обычного.

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

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

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

    Результативность - завершение алгоритма определёнными результатами.

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

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

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

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

33. Язык программирования Visual Basic for Application (VBA ). Разработка пользовательских функций средствами VBA .

Visual Basic for Applications, VBA - визуальная объектно-ориентированная система программирования, предназначенная для создания программ - объектов, встраиваемых в различные иные программные системы и интерфейсы, поддерживаюшие технологию связывания и внедрения объектов (OLE), объекты которой исполняются внутри офисных приложений Microsoft Office и программных продуктов других производителей, поддерживающих технологию OLE. Языковой основой VBA является классический язык BASIC.

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

Недостатком являются проблемы с обратной совместимостью разных версий. Эти проблемы в основном связаны только с тем, что код программы обращается к функциональным возможностям, появившимся в новой версии программного продукта, которые отсутствуют в старой. Также к недостаткам часто относят и слишком высокую открытость кода для случайного изменения, тем не менее, многие программные продукты (например, Microsoft Office и IBM Lotus Symphony) позволяют пользователю использовать шифрование исходного кода и установку пароля на его просмотр..

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

Общие сведения

Реляционная СУБД Microsoft Access работает, соответственно, с реляционными базами данных. В общем виде это означает множество взаимосвязанных таблиц, каждая из которых содержит данные своего типа.

СУБД MS Access входит в состав программного обеспечения Microsoft Office.

Возможности

СУБД Access предоставляет пользователю следующие возможности:

    создавать базы данных;

    добавлять новую информацию в созданные БД;

    обновлять или каким-либо еще образом изменять данные в БД;

    удалять имеющуюся информацию из БД;

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

    организация данных при помощи сортировки и/или классификации информации;

    общий доступ к таблицам и данным при использовании отчетов, электронных писем, Интернета и/или локальной сети;

    осуществление разных видов связей между таблицами;

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

Структурные элементы БД

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

Свойства полей

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

Основные свойства такие:

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

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

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

    Формат. Форматирует данные поля.

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

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

Типы данных

Поля баз данных в Microsoft Access могут иметь такие типы данных, как:

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

    Поле МЕМО. Тот же текстовый тип, хранящий большие объемы информации (до 64 кбайт, то есть до 64 тысяч символов). Из-за этой характеристики МЕМО не может быть использован в качестве ключа или индекса.

    Числовой . Цифровое поле, имеющее подтипы, выбор которых зависит от желаемой точности вычислений и т. д. До 8 байт или 16 - для кодов репликации.

    Счетчик . Поле, не требующее заполнения - значения (числа по возрастанию), автоматически заносится в таблицу, позволяя данным в ячейках оставаться уникальными. Проще говоря, счетчик нумерует записи в базе данных. Удобно использовать в качестве ключа 4 байта, 16 - для кодов репликации.

    Логический . Используется только для значения - 0 (нет) и минус 1 (да). Можно настроить разные варианты записи - галочка или выбор вручную (размер - 1 байт).

    Дата/время. Название типа данных говорит само за себя. Вывод в поле данных возможен в семи различных форматах. 8 байт.

    Денежный. Определяет значения валют. Данный тип данных появился для предотвращения округления в вычислениях. Также 8 байт.

    Поле объекта OLE. Принимает объекты разных форматов - графические, аудио и т. д. Размер - до одного гигабайта.

  • Мастер подстановок. Заранее предполагает связанные таблицы. Позволяет выбрать значение из другой таблицы или из поля со списком. При этом тип выбранного значения устанавливается автоматически. Имеет размер первичного ключа. Не более 4 байт.
  • Ключи

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

    Ключи подразделяются на:

      первичные (основные) - непосредственно сама связь;

      вторичные (внешние) - способ связи.

    Табличные связи

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


    Ограничения на имена

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

      имя не должно содержать более 64 символов;

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

      имя не может начинаться с пробела;

      нельзя использовать в имени управляющие символы (коды с 0 до 31 в ASCII);

      имя не может включать прямые кавычки.

    Объекты

    Объекты СУБД MS Access представляют собой пользовательский интерфейс базы данных. Он позволяет непосредственно управлять ею и ее данными.

    Таблицы

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

    Запросы

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

    Формы

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

    Отчеты

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

    Технология работы с СУБД Access

    Разработка СУБД в Access выполняется при помощи следующих пунктов:

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

      Определить примерное количество таблиц в базе данных - информацию необходимо систематизировать и “разложить все по полочкам”. Не следует добавлять слишком много полей в одну таблицу: лучше распределить данные на две и связать их. Каждая таблица должна содержать только одну тему.

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

      Определить соотношения таблицы-поля.

      Обозначить первичные и (при необходимости) вторичные ключи в таблицах.

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

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

      Воспользоваться анализом самого Access для очередной проверки.

    Создание СУБД в Access возможно двумя способами:

      использовать мастера БД для создания необходимых объектов;

      создать пустую БД, дополняя ее новыми объектами самостоятельно.

    MS Access позволяет расширить базу данных уже после ее создания, но основную структуру необходимо продумать заранее: такие вещи, как типы данных, впоследствии, особенно после заполнения таблицы, поменять будет невозможно.

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

Раздел 2. Организация баз данных

Лекция 13. СУБД MS Access . Создание таблиц и определение связей

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

Начиная с пакета MS Office 2000, в составе MS Access появились новые функциональные возможности:

§ Поддержка клиент-серверных приложений. В качестве серверов БД могут быть использованы Microsoft SQL Server 6.5 или 7.0, а также процессор обработки данных MSDE (Microsoft Database Engine ).

§ Экспорт объектов БД в формат HTML , создание статических и динамических Web -страниц для доступа к данным.

§ Возможность использования электронной почты для отправки данных и т.д.

Взаимодействие со средой MS Access осуществляется через главное меню и панели инструментов их использование и настройка не отличается от других приложений пакета MS Office . СУБД MS Access создает всю систему в одном фале с расширением *. mdb , с этим связаны недостатки и преимущества этой СУБД.

Основы работы в СУБД MS Access

После создания или открытия БД через окно диалога « Microsoft Access » откроется рабочее окно диалога «База данных» (рисунок 13.1).

Рисунок 13.1 - Диалоговое окно «База данных»

Рабочее окно «База данных» позволяет получить доступ к основным объектам MS Access , таким как: таблицы, запросы, формы, отчеты, страницы, макросы, модули. Определим основные объекты, используемым в СУБД Access :

§ Таблица – основной объект реляционной базы данных, необходимый для хранения данных.

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

§ Форма – формат отображения в виде окна ОС Windows. Весь пользовательский интерфейс базируется на формах.

§ Отчет – форматированное представление данных, выводимое на экран, принтер или файл.

§ Страница – формат отображения в виде формы служащий для доступа к Web-страницам. Новый объект, добавленный в MS Access 2000.

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

§ Модуль – программа на языке Access Basic . Использование модулей позволяет более полно реализовать возможности MS Access .

Практически каждый объект MS Access , кроме макросов и модулей, имеет несколько вариантов создания, традиционными можно назвать конструктор и мастер:

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

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

Создание таблиц

СУБД MS Access поддерживает ряд базовых типов данных: текстовый, числовой, денежный, счетчик, даты/времени, логический, поле МЕМО, поле объекта OLE , гиперссылка. Среди перечисленных типов расширенными можно считать последние два: поле объекта OLE и гиперссылка, последний не нуждается в пояснениях. Поле объекта OLE позволяет импортировать в таблицы БД объекты, поддерживающие технологию OLE , например изображения, документы MS Word и т.д.

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

§ Имя поля не может содержать более 64 символов.

§ В именах полей и таблиц недопустимо использование управляющих символов с кодами 0 – 31 и символов (. ! ‘ ).

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

СУБД MS Access предлагает несколько способов создания таблиц:

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

§ Конструктор – позволяет создать новую таблицу в конструкторе таблиц, при этом сразу можно указать все возможные свойства полей таблицы.

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

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

§ Связь с таблицами – позволяет осуществить связь с таблицами расположенными во внешних файлах.

Основным средством создания таблиц в MS Access является конструктор таблиц. Рассмотрим структуру конструктора таблиц (рисунок 13.2) и особенности создания таблиц в этом режиме.

Рисунок 13.2 - Окно конструктора таблиц

В верхней части окна конструктора находится бланк-таблица содержащая три столбца: «Имя поля», «Тип данных», «Описание». В столбце «Имя поля» указываются имена полей (атрибутов) создаваемой таблицы. В столбце «Тип данных» указываются базовые типы данных соответствующих полей. Столбец «Описание» не является обязательным и предназначен для комментариев.

Каждое поле, наряду с определенным типом, имеет дополнительные свойства, отображаемые в разделе «Свойства поля» в нижней части конструктора.

Можно выделить следующие свойства полей расположенные на вкладке «Общие»:

· Размер поля – определяет максимальное число знаков (применяется для полей типа: текстовые, числовые, счетчик);

· Новые значения – определяет способ изменения значений счетчика (только для типа счетчик);

· Формат поля – определяет формат вывода значений поля (применяется для всех полей кроме полей объектов OLE );

· Число десятичных знаков – определяет число десятичных знаков при отображении чисел (применяется для типов: числовой, денежный);

· Маска ввода – позволяет задать маску ввода, для упрощения ввода данных (применяется для полей типа: текстовые, дата/время, числовые, денежные);

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

· Значение по умолчанию – позволяет задать значение, автоматически вводимое в поле при создании новой записи;

· Условие на значение – определяет требования к данным, вводимым в поле;

· Сообщение об ошибке – содержит сообщение, которое будет выводиться в случае нарушения условия на вводимое значение (см. выше);

· Обязательное поле – указывает, требуется ли обязательный ввод значений в поле;

· Пустые строки – определяет, допускается ли ввод пустых строк в поле (только для текстовых полей);

· Индексное поле – определяет индекс создаваемый по одному полю;

· Сжатие ЮНИКОД – включает сжатие полей, при использовании кодировки Unicode (для полей МЕМО, гиперссылок и текстовых полей).

Замечание. Определение таких свойств как «Маска ввода», «Значение по умолчанию», «Условие на значение», «Сообщение об ошибке» позволят повысить удобство и скорость работы пользователей, а также снизить количество возможных ошибок.

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

Назначение первичного ключа осуществляется командой Правка - Ключевое поле, командой контекстного меню Ключевое поле или кнопкой панели инструментов . Сложный первичный ключ можно создать аналогично, предварительно выделив поля входящие в первичный ключ мышкой, с удержанием клавиши Shift или Ctrl .

Как и во многих СУБД, ключи определяются индексами (в том числе первичный ключ), поэтому для назначения сложных ключей или их специальной настройки можно использовать окно диалога «Индексы» (рисунок 13.3).

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

Рисунок 13.3 - Окно диалога создания составных индексов.

Обычно, после того как созданы все таблицы и определены все свойства их полей создаются связи между таблицами. Связи позволяют реализовать принципы поддержки целостности между данными, размещенными в различных таблицах. Связи создаются через инструмент – «Схема данных», вызываемый командой Сервис - Схема данных или кнопкой панели инструментов. Добавление таблиц в схему реализуется через окно диалога «Добавление таблицы» простым выделением и нажатием кнопки «Добавить» (рисунок 13.4). Необходимо отметить, что в связях могут участвовать не только таблицы, но и запросы.


Рисунок 13.4 – Диалоговые окна «Схема данных» и «Добавление таблицы»

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

В окне диалога «Изменение связей» поля со списками «Таблица/запрос» и «Связанная таблица/запрос» указывают на главную и подчиненную таблицы соответственно. Левый часть списка содержит поля главной таблицы участвующие в связи, а в правой части указываются связанные с ними поля подчиненной таблицы. При соединении с использованием простых ключей MS Access заполняет списки связей автоматически, но при соединении сложных ключей приходится заполнять списки вручную.

Окно диалога «Изменение связей» позволяет определять принципы поддержки ссылочной целостности, для этого используется группа флажков «Обеспечение целостности данных». Если флажок «Обеспечение целостности данных» не выставлен, то MS Access не следит за поддержкой целостности связанных записей.

MS Access поддерживает два основных принципа поддержки ссылочной целостности на удаление:

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

§ при удалении записи главной таблицы, на которые существуют ссылки в подчиненных таблицах, происходит каскадное удаление последних, если флажок «Каскадное удаление связанных записей» включен (рисунок 13.5);

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

Рисунок 13.5 - Диалоговое окно «Изменение связей»

Контрольные вопросы

1. Какие новые возможности появились в СУБД MS Access 2000?

2. Какие категории объектов выделяют в СУБД MS Access?

3. Какие методы создания объектов можно назвать основными?

4. Назовите основные типы данных, используемые в MS Access .

5. Какие ограничения накладываются на имена полей и таблиц в СУБД MS Access ?

6. Какие режимы работы используются для работы с таблицей?

7. Назовите основные свойства полей MS Access .

8. В чем назначение вкладки «Подстановка»?

9. Как определяются ключи и индексы?

10. Как создаются связи между таблицами в СУБД MS Access ?

11. Какие принципы поддержки ссылочной целостности используются СУБД MS Access ?

Задания для самостоятельной работы

Задание 1. С учетом основных данных (таблицы 13.1 – 13.5) создайте оставшиеся таблицы БД ИС «Библиотека» и установите связи. Ключевые поля показаны курсивом. Описание создания таблицы «Книги» приводится ниже.

Таблица 13.1 – Свойства полей таблицы «Книги»

Подпись

Тип данных

Размер

Обяз. Поле

Индекс. поле

Пустые знач.

Условия

ISBN

Текстовый

14

Да

Да (совпадения не допускаются)

Нет

Название

Текстовый

Да

Нет

Текстовый

Издательство

Текстовый

Да

Нет

Место издания

Текстовый

Да

Нет

Год издания

Числовой

Целое

Да

>19 59

Страниц

Числовой

Целое

Да

Таблица 13.2 – Свойства полей таблицы «Экземпляры»

Подпись

Тип данных

Размер

Обяз. поле

Индекс. поле

Маска ввода

Инвентарный номер

Числовой

Дл.целое

Да

Да (совпадения не допускаются)

ISBN

Текстовый

Да

Да (совпадения допускаются)

Читательский билет

Числовой

Дл.целое

Да

Да (совпадения допускаются)

Наличие

Логический

Да

Дата взятия

Дата/Время

Кр.ф.даты

Да

Дата возврата

Дата/Время

Кр.ф.даты

Да

Таблица 13.3 – Свойства полей таблицы «Читатели»

Подпись

Тип данных

Размер

Обяз. поле

Индекс. поле

Пустые значения

Условия

Читательский билет

Числовой

Дл.целое

Да

Да (совпадения не допускаются)

ФИО

Текстовый

Да

Нет

Дата рождения

Дата/Время

Кр.ф.даты

Да

Пол

Текстовый

Да

Нет

«М» or «Ж»

Домашний телефон

Текстовый

Рабочий телефон

Текстовый

Таблица 13.4 - Свойства полей таблицы «Каталог»

Подпись

Тип данных

Размер

Обяз. поле

Пустые значения

Код области знаний

Числовой

Целое

Да

Наименование

Текстовый

Да

Нет

Таблица 13.5 - Свойства полей таблицы «Связь»

Подпись

Тип данных

Размер

Обяз. поле

Индекс. Поле

Пустые значения

ISBN

Текстовый

14

Да

Да (совпадения допускаются)

Нет

Код области знаний

Числовой

Целое

Да

Да (совпадения допускаются)

Пример создания таблицы «Книги»

Создадим таблицу «Книги» БД «Библиотека» на основе созданной ранее реляционной схемы, с учетом некоторых сформулированных ранее ограничительных условий. Для удобства основные свойства полей сведены в таблицы 13.1 – 13.5

1. В диалоговом окне БД (рисунок 13.1) выбираем категорию «Таблицы».

2. Открываем окно конструктора таблиц командой Создать-Конструктор или другим способом.

3. В раскрывшемся окне диалога (рисунок 13.2) устанавливаем курсор в первую свободную строку столбца «Имя поля» и вводим название поля - ISBN .

4. В столбце «Тип данных» указываем тип - текстовый (данное значение устанавливается по умолчанию).

5. Уточняем размер поля, для этого курсор устанавливается в позицию свойства – «Размер поля» (в нижней части окна конструктора, рисунок 13.2) и указываем значение – 14 .

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

8. Повторяем пункты 3 – 7 и аналогично создаем другие поля таблицы, но для поля Год_издания дополнительно установим свойство «Условие на значение» равным >1959 . Со свойством «Условие на значение» обычно устанавливают свойство «Сообщение об ошибке», например значение Книга издана до 1960 года!

9. Укажем первичный ключ для поля ISBN , для этого курсор устанавливаем на него и выполняем команду контекстного меню Ключевое поле.

10. Сохраним созданную таблицу под именем Книги . Окно диалога «Сохранение» вызывается каждый раз при закрытии измененной таблицы.

Аналогичным способом создаются и остальные таблицы БД.

Пример создания фиксированного списка

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

1. Выберем поле Пол .

2. Перейдем на вкладку бланка свойств «Подстановка».

3. Установим свойство Тип элемента управления в значение Поле со списком .

4. Установим свойство Тип источника строк в значение Список значений .

5. Установим свойство Источник строк в значение «М»;«Ж»

6. Сохраним изменения в таблице.

Рисунок 13.6 – Схема данных БД «Библиотека»

Задание 2. Установите связи между таблицами, как показано на рисунке 13.6. Руководствуйтесь правилами поддержания ссылочной целостности определенными в постановке задачи.

MS Access - реляционная клиент-серверная от компании Microsoft. Реляционная означает, что она основана на таблицах. Рассмотрим эту систему подробнее.

Что такое реляционная база данных?

Рассмотрим преимущества и недостатки данной СУБД.

Преимущества СУБД Microsorf Access

  • Простой и понятный интерфейс. Приступить к работе с данной СУБД можно, не имея никаких особых навыков. Кроме того, на помощь новичку приходят многочисленные справочные пособия, онлайн- и офлайн-курсы.
  • СУБД MS Access общеизвестна и очень популярна в настольных ПК. Это значит, что вы всегда можете обратиться за помощью к знакомому, уже давно использующему данную СУБД, за советом, а также вместе работать с одной базой данных по сети.
  • Практически безграничные возможности из таблиц щелчком одной клавиши мыши можно перенести в Excel, Word, экспортировать в XML, опубликовать в PDF, не говоря уже о том, чтобы без проблем перенести выбранные объекты в другую базу данных.
  • Невысокая цена. Если покупать MS Access в составе полного пакета Microsoft Office, то, по сравнению с другими платными СУБД, цена окажется очень заманчивой.
  • Широкий выбор конструкторов для построения форм, отчетов и запросов, с помощью которых можно отфильтровать данные и вывести их в удобном виде.
  • Широкие возможности импорта данных: если у вас есть табличные данные, созданные при помощи текстового процессора MS Word или табличного процессора MS Excel, вы с помощью мастера без труда перенесете их в свою базу. Импорт, кроме того, можно выполнить из простого текстового документа, из документа XML, а также из файлов баз данных, созданных в других СУБД (таких как dBASE, PARADOX).
  • Возможность создания пароля на своей базе данных.
  • Встроенный язык VBA высокого уровня.
  • Возможность записи макросов.
  • Редактор SQL.

Для программистов можно выделить еще один значительный плюс: ядро Access JET 4 встроено в операционные системы Microsoft, начиная с Windows-98. Это значит, что разработанное приложение, использующее в работе базу данных, созданную в Access, можно без проблем переносить на любой компьютер с ОС Windows. Оно будет работать, не требуя установки самой СУБД. В крайнем случае потребуется лишь установка RUNTIME - версии, которую можно абсолютно бесплатно скачать с сайта Microsoft.

Как видим, достоинства СУБД MS Access налицо. Но все плюсы могут перекрыться вполне существенными минусами. Рассмотрим их.

Недостатки СУБД Microsoft Access

  • MS Access относится к файл-серверным СУБД. Это означает, что вся обработка данных происходит непосредственно на компьютере клиента, пользователя. Серверная часть лишь извлекает данные и передает их по требованию. Это приводит к тому, что по локальной сети курсируют большие потоки данных, и при большом количестве пользователей, работающих с базой данных, может случиться перегрузка сети. Классическая файл-серверная архитектура всегда влечет за собой низкую производительность при большом количестве пользователей. В версии MS Access 2010 этот вопрос частично решен.
  • Отсутствие надежных средств защиты данных. По сути, используется только пароль на базе данных и пароль пользователя. Для опытного специалиста не представляет никакой сложности снять такую защиту.
  • Многопользовательский режим возможен только в одноранговой сети или в сети с файловым сервером.
  • Для разработки нестандартного интерфейса требуется привлекать программистов.
  • Редактор примитивен, использовать его неудобно.
  • Данная СУБД не бесплатная.
  • MS Access заточен под операционные системы Windows. Чтобы попытаться использовать данные, созданные в этой СУБД в других ОС (например, LINUX), придется изрядно повозиться. Проще перенести данные в другую СУБД.

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

Создание таблиц

Нет ничего проще, чем создать новую таблицу при помощи MS Access 2007:

  1. После открытия базы данных переходим на вкладку «Создание».
  2. Щелкаем по иконке «Таблица», она первая слева.
  3. Перед нами визуальное представление таблицы со стандартным названием «Таблица 1» и автоинкрементным полем «Код».
  4. Можно приступать к вводу данных во второй столбец. После ввода строки необходимо нажать клавишу Enter. Столбец автоматически переименуется в «Поле 1», поле «Код» примет значение единицы, станет доступным ввод данных в следующую строку.
  5. Чтобы переименовать столбец, достаточно кликнуть по нему мышью два раза. Желательно задавать имена столбцов без пробелов!
  6. Строитель таблиц в Access 2007 очень умный. Стоит вам в первой строке новой таблицы ввести в поле значение типа «Дата», как в следующей строке того же столбца вам автоматически предложат воспользоваться календарем.
  7. Для завершения создания таблицы необходимо ее сохранить, нажав на соответствующую иконку или сочетание клавиш CTRL+S.

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

Создание запросов

Рассмотрим, как создавать в MS Access запросы. Создадим в версии 2007 простой запрос в режиме конструктора:

  1. На панели "Меню" выберите на вкладке «Создание» кнопку «Конструктор запросов».
  2. Перед вами сразу появится окошко выбора таблиц. Щелкните по каждой таблице, из которой необходимо выбрать данные. Следует помнить, что выбор вы сможете осуществить, только если несколько таблиц можно логически увязать друг с другом при помощи какого-либо поля.
  3. Если у вас выбрано несколько таблиц, необходимо построить между ними связь, протянув мышью линию от одного поля одной таблицы до связываемого поля другой.
  4. Теперь двойным щелчком выберите поля из каждой таблицы, которые вы хотите видеть в результате.
  5. На панели меню на вкладке «Конструктор» нажмите на большой восклицательный знак. Перед вами в табличной форме предстанет результат вашей выборки.

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

Иногда даже начинающему пользователю хочется представить свои данные в более интересном формате, нежели простая таблица. Тогда на помощь ему придет инструмент MS Access - "Формы".

Мастер форм

На примере Access 2007 рассмотрим, как пользоваться мастером форм:


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

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