Назначение Access

Отличительные особенности MS Access

Определение 1

Системы управления базами данных (СУБД) – это отдельный класс программных продуктов, основная задача которых хранить большие объемы данных и управлять ими.

Существуют различные математические модели данных, на которых основаны СУБД. Относительно моделей данных СУБД делятся на иерархические, сетевые, реляционные, объектно-ориентированные и другие. На сегодняшний день наиболее популярными считаются СУБД, основанные на реляционной модели. К классу реляционных СУБД относятся: MS SQL SERVER, PostgreeSQL, MySql, InterBase, MS Access. Основными функциями реляционных СУБД являются:

  • создание, редактирование и удаление структуры таблиц;
  • добавление, изменение и удаление записей в таблицы;
  • построение запросов на основе языка SQL;
  • создание хранимых процедур на сервере баз данных.

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

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

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

Замечание 1

Таким образом, MS Access позволяет разрабатывать полноценные приложения и даже информационные системы на основе реляционных баз данных без привлечения дополнительных средств разработки.

Основные объекты MS Access

Модель MS Access состоит из следующих основных объектов:

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

Началу работы в MS Access предшествует проектирование модели данных. Разработчик проектирует таблицы и связи между ними любыми удобными средствами. После этого он может приступать к первому этапу работы в MS Access – к созданию таблиц. Созданные таблицы при помощи инструмента «Схема данных » связываются в соответствии с проектом.

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

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

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

Запросы чаще всего используются для выбора данных по различным критериям и условиям. В большинстве реляционных СУБД для создания запросов используется язык SQL, который не просто освоить рядовому пользователю. В MS Access сложности языка SQL скрыты от пользователя удобным инструментом «Конструктор запросов». Запросы также бывают нескольких видов:

  • Запрос на выборку – позволяет компоновать данные из разных таблиц в одну таблицу на основе построенных связей.
  • Запрос с условием – позволяет накладывать на отдельные поля условия в виде логических выражений. Условий может быть несколько, тогда они связываются логическими операторами И, ИЛИ.
  • Запрос с параметром – позволяет ставить в условии запроса не постоянное значение, а параметр, значение которого запрашивается у пользователя.
  • Запрос с групповой операцией – позволяет применять к группе данных такие операции как суммирование, подсчет количества строк, поиск среднего значения, поиск минимума и максимума по группе.
  • Перекрестный запрос – особый вид группового запроса, в результате которого получается перекрестная таблица с заголовками строк, заголовками столбцов и значениями в пересечениях.
  • Запрос на добавление записи.
  • Запрос на обновление записи.
  • Запрос на удаление записи.

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

Замечание 2

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

Среда программирования MS Access является объектно-ориентированной. Это означает, что со всеми объектами MS Access потенциально может происходить определенный перечень событий. Например, открытие формы, нажатие на кнопку, обновление записи, двойной щелчок мышкой на текстовом поле и т.д. К наступлению этих событий пользователь может «привязать» программный код, реализующий некоторый алгоритм. Например, при нажатии на кнопку активизируется процедура, которая выводит на экран диалоговое окно с сообщением «Введите Ваше имя». Опытный пользователь может использовать для программирования таких процедур язык VBA. Если пользователь не знаком с программированием на VBA, то многие задачи он может решить с использованием макросов – небольших стандартных «заготовок» кода на VBA.

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

Другие возможности MS Access

Изначально MS Access предполагался как среда для разработки информационных систем, у которых и база данных и пользовательский интерфейс хранятся в одном файле на одном компьютере. Такие информационные системы обычно называют «настольными». Однако, в процессе выхода новых версий у MS Access появлялись новые возможности. В версиях начиная с MS Access XP стало возможным создавать отдельный сервер данных и подключать к нему несколько клиентских компьютеров. Можно также создавать базу данных в другой СУБД (MS SQL SERVER, MySQL) и подключать к ней формы, отчеты и запросы из MS Access. Возможно импортирование и экспортирование данных в таких универсальных форматах как:

  • EXCEL;

Всем привет. Тема данной статьи — основное назначение Access. Но прежде чем освоить основное назначение Access, давайте разберем понятие базы данных.
База данных (БД) — совокупность данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными, независимая от прикладных программ.
Наиболее распространенным типом модели представления данных является реляционный (relational) тип. Название «реляционный» объясняется тем, что каждая запись в базе данных содержит информацию, относящуюся (related) к одному конкретному объекту. Кроме того, с информацией, принадлежащей разным объектам, можно работать как с единым целым, основанным на значениях связанных между собой (related) данных. В реляционных СУБД все обрабатываемые данные представляются в виде таблиц.

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

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

Access предоставляет максимальную свободу в задании типа данных — текст, числовые данные, даты, время, денежные значения, рисунки, звук, документы, электронные таблицы. Имеется возможность задавать форматы хранения (длина строки, точность представления чисел и даты времени) и представления этих данных при выводе на экран или печать.
Access является современным приложением Windows и позволяет использовать все возможности DDE (Dynamic Data Exchange) — динамический обмен данными и OLE (Object Linking and Embedding) — связь и внедрение объектов. DDE обеспечивает обмен данными между MS Access и любым другим приложением Windows. OLE устанавливает связь с объектами другого приложения или внедряет какой-либо объект в базу данных Access; в качестве объектов могут выступать рисунки, диаграммы, электронные таблицы или документы из других приложений Windows. Access может работать с большим числом разнообразных форматов данных, позволяя осуществлять импорт и экспорт данных из файлов текстовых редакторов и электронных таблиц. Access способна непосредственно обрабатывать файлы Paradox, dBase III, dBase IV, FoxPro и другие.

СУБД Access для работы с данными использует процессор баз данных Microsoft Jet, объекты доступа к данным и средство быстрого построения интерфейса — конструктор форм. Для получения распечаток используется конструктор отчётов. Автоматизация рутинных операций может выполняться с помощью макрокоманд. Несмотря на свою ориентированность на конечного пользователя, в Access присутствует язык программирования Visual Basic for Application, который позволяет создавать массивы, свои типы данных, контролировать работу приложений.

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

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

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 - это неплохие возможности за небольшую стоимость. Понятный интерфейс, распространенность, встроенные вспомогательные конструкторы и мастера - все это облегчает проектирование базы данных и работу с ней.

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

Рассмотрим работу СУБД на примере MS Access, входящей в профессиональный пакет MS Office.

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

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

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

Основные объекты базы данных Access можно создавать в режиме Мастер и в режиме Конструктор .

Таблицы

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

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

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

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

Характеристики полей базы данных:

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



· тип поля определяет тип данных, которые могут содержаться в данном поле;

· размер поля определяет предельную длину (в символах) данных, которые могут размещаться в данном поле;

· формат поля определяет способ форматирования данных в ячейках, принадлежащих полю;

· маска ввода определяет форму, в которой вводятся данные в поле (средство автоматизации ввода данных);

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

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

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

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

· обязательное поле – свойство, определяющее обязательность заполнения данного поля при наполнении базы;

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

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

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

Запросы

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

Запрос-выборка предназначен для отбора данных, хранящихся в таблицах, и не изменяет эти данные.

Запрос-изменение используется для изменения или перемещения данных. К этому типу относятся: запрос на добавление записей, запрос на удаление записей, запрос на создание таблицы, запрос на обновление.

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

Ряд запросов строятся с использованием мастеров. Возможно создание запросов следующих видов:

простой запрос , позволяющий выбирать поля из нескольких таблиц или запросов;

перекрестный запрос вычисляет сумму, среднее значение, число элементов и значения других статистических функций, группируя данные и выводя их в компактном виде;

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

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

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

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

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

Окно построителя имеет четыре области со своими полосами прокрутки. В верхней области располагается создаваемое выражение. Три нижние используются для выбора элементов. Они заполняются по иерархическому принципу. Левая область содержит список всех источников данных для запроса. Средний список служит для показа элементов, входящих в выбранный объект из левого списка. На рисунке в левом списке указаны имя запроса (Запрос 1) и имена таблиц и других объектов базы, а в средней части – имена полей, входящих в этот запрос или таблицу (Фамилия, Имя ). Правый список служит для выбора объектов. Кнопки с символами математических операций позволяют быстро вводить соответствующие символы в выражение.

Кроме традиционных математических действий существует еще несколько специальных операторов.

BETWEEN AND заменяет знаки «больше или равно» и «меньше или равно». Например, условие BETWEEN 1981 AND 1984 эквивалентно условию > =1981 AND<=1984.
Знак «^» определяет возведение в степень.
Знак «&» используется для сложения данных символьного типа. Для соединения можно использовать и более привычный знак «+». Например, эквивалентны следующие три выражения: «Петров», «Петр» & «ов», «Петр» + «ов».
Оператор LIKE используется для создания масок при определении строк с неизвестными символами и требует дополнительных специальных символов:

? – обозначает любой одиночный символ;

* - обозначает любую последовательность символов;

# - обозначает любую цифру;

– обозначает символ из определенного набора в квадратных скобках, например [а - d] обозначает одну из четырех букв: а, b, d. Восклицательный знак инвертирует смысл выражения, заключенного в квадратные скобки: [!1 - 5] – исключает цифры от 1 до 5.

Также для построения условий отбора могут использоваться логические операторы: AND, EQV, OR.

Формы

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

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

Самый простой способ создания формы – Автоформа.

Форма позволяет вводить, просматривать, редактировать и печатать данные.

Отчеты

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

Можно создать отчеты следующих видов:

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

· детальный отчет – хорошо подготовленный отчет в наглядном удобном виде, включающий ряд дополнительных элементов;

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

Макросы и модули

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

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

Связь между таблицами и целостность данных

Р ассмотрим, как реализуется установка связей между таблицами на практике.

Между одноименными полями двух таблиц MS Access автоматически устанавливает связь. Например, между таблицами «Студенты» и «Успеваемость» устанавливается связь по полю «№ студ. билета». Это означает, что при формировании запроса к этой паре таблиц Access сможет объединить записи (строки) таблиц, в которых значения поля «№ студ. билета» совпадают.

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

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

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

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

Целостность данных означает следующее:

· в связанное поле подчиненной таблицы можно вводить только те значения, которые имеются в связанном поле главной таблицы (например, в таблицу «Успеваемость» нельзя ввести запись с номером студенческого билета, отсутствующим в таблице «Студенты»);

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

При попытке нарушить эти запреты MS Access выдает сообщение об ошибке.

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

  • каскадное обновление связанных полей;
  • каскадное обновление связанных записей.

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

Установление связей между таблицами рассмотрим на конкретном примере – на нашей базе данных «Колледж».

Выберите команду Правка /Схема данных . На экране появится диалоговое окно со списком всех таблиц открытой базы данных.

Можно включить в этот список и запросы (или создать список только из запросов).

Задача пользователя– указать системе те таблицы, между которыми он устанавливает связи. Нужно выделить таблицу «Преподаватели» и нажать кнопку Добавить , затем то же самое проделать с таблицами «Успеваемость» и «Студенты». Нажать кнопку Закрыть.

На экране появится окно Схема данных .

Это окно содержит все таблицы базы данных, между которыми устанавливаются (или уже установлены) связи. Для установления связи между двумя таблицами можно методом «Drag-and-Drop» переместить имя поля с первичным ключом главной таблицы на одноименное поле подчиненной таблицы.

Прежде всего нужно установить связь между таблицами «Студенты» и «Успеваемость». Удерживая нажатой левую кнопку мыши, переместите № студ. билета из таблицы «Студенты» на № студ. билета в таблице «Успеваемость» и отпустите левую кнопку мыши. На экране появится диалоговое окно Связи. В этом окне установите флажок «Обеспечение целостности данных». Этим вы включите механизм поддержки целостности данных в таблицах «Студенты» и «Успеваемость».

После активизации флажка «Обеспечение целостности данных» становятся допустимыми радиокнопки Отношение и два флажка каскадных операций. В группе «Отношение» надо обязательно выбрать один из типов связи: «один-к-одному» или «один-ко-многим».

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

Сервисные операции

1) Проверка орфографии. О беспечивают авто-исправление ошибок ввода. Используется словарь. Включается система и при обнаружении слова, отсутствующего в словаре, появляется диалоговое окно "Орфография". Можно это слово пропустить, добавить в словарь, заменить.

2) Автозамена . Автоматически исправляет ошибки и опечатки непосредственно в процессе набора данных в базу. Список автозамены "общий" для MS Office 2003. Есть много настроек как делать замену.

3) Устранение конфликтов в ЛВС. На удаленных рабочих станциях пользователи могут работать с копиями БД, а затем делать их синхронизацию (запуск - Меню\Сервис\Репликация \Устранить конфликты).

4) Средства анализа БД. Позволяют оптимизировать построение БД, документировать ее состояние, исключить повторы данных в таблицах, повысить производительность.

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

7) Репликация предоставляет пользователям, которые работают за различными компьютерами, удобный способ обмена изменениями, вносимыми в единую БД. Репликация имеет широкое практическое применение. Для создания и синхронизации реплик в MS Access 2003 предусмотрены команды репликации.

Термины и определения

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

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

База данных - множество логически совместимых файлов данных.

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

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

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

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

Транзакция - входное сообщение, переводящее базу данных из одного непротиворечивого состояния в другое (запрос на изменение базы данных). В зафиксированной транзакции все операции завершены.