Учебное пособие

Учебное пособие Базы данных в информатике

Работа добавлена на сайт bukvasha.net: 2015-10-30

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 25.12.2024


Гипероглавление:
Научный редактор
Новосибирский гуманитарный институт, 2007
В.И. Зубов, 2007
Введение
Методические рекомендации для студентов по использованию учебно-методического пособия «БАЗЫ ДАННЫХ»
Методические рекомендации для преподавателей по использованию учебно-методического пособия «БАЗЫ ДАННЫХ»
Базы данных и системы управления базами данных
Основные понятия и определения
Базы данных
Системы управления базами данных
Схема данных
Объекты базы данных
Виды СУБД
Локальные и сетевые базы данных
Локальные базы данных
Сетевые базы данных
Режимы работы с базами данных
Дополнительные режимы работы с базой данных
Безопасность баз данных
Работа с СУБД Microsoft Access 2000
Общие замечания`
Запуск и завершение работы программы MS Access
Интерфейс Access
Окно базы данных
Средства конструирования объектов
Мастера Access
Создание базы данных
Размещение базы данных
Создание файла базы данных Access
Создание таблиц базы данных
Определение структуры новой таблицы в режиме конструктора
Типы данных
Свойства полей базы данных
Общие свойства поля
Тип элемента управления
Определение первичного ключа
Сохранение таблицы
Упражнение 1. Создание файла базы данных и структуры таблиц
Создание схемы данных
Модификация структуры базы данных
Упражнение 2. Создание схемы данных
Непосредственный ввод данных в таблицу
Макет таблицы
Упражнение 3. Непосредственный ввод данных в таблицы
Поиск, сортировка и фильтрация данных
Поиск и замена значений в полях
Сортировка записей
Фильтрация записей
Сохранение фильтра и группы фильтров
Упражнение 4. Поиск, сортировка и фильтрация данных в таблице
Работа с запросами
Создание запроса на выборку
Упражнение 5. Создание запросов на выборку
Запрос с параметром (параметрический запрос)
Упражнение 6. Создание параметрического запроса и работа с ним
Запрос с вычисляемыми полями
Упражнение 7. Создание запроса с вычисляемыми полями
Итоговые запросы
Упражнение 8. Создание итогового запроса
Запросы на изменение
Запрос на создание таблицы
Упражнение 9. Запросы на создание таблиц
Запрос на обновление
Упражнение 10. Создание запроса на обновление записей в таблице
Запрос на добавление записей
 Упражнение 11. Создание запроса на добавление записей в таблице
Запрос на удаление записей
Упражнение 12. Создание запроса на удаление записей в таблице
Перекрестный запрос
Упражнение 13. Создание перекрестного запроса
Работа с формами
Автоформы
Упражнение 14. Создание автоформ. Работа с формами
Создание форм с помощью мастера
Многотабличные формы
Упражнение 15. Создание многотабличной формы с помощью мастера
Конструирование формы
Структура формы
Объекты и элементы форм
Дизайн формы
Упражнение 16. Доработка формы в режиме Конструктора
Вычисления в форме
Ограничения доступа к данным через форму
Упражнение 17. Создание форм с вычисляемым полем
Работа с отчетами
Режимы работы с отчетом
Отчет в режиме конструктора.
Отчет в режиме предварительного просмотра.
Сортировка и группировка в отчете
Упражнение 18. Создание отчетов
Использование вычисляемых значений
Предварительный просмотр и печать отчета
Упражнение 19. Создание отчета на основе запроса
Построение диаграмм.
Обмен данными
Экспорт данных
Импорт и связывание данных
Импорт данных
Связывание данных
Упражнение 20. Экспорт и импорт данных
Литература




НОВОСИБИРСКИЙ ГУМАНИТАРНЫЙ ИНСТИТУТ
Кафедра математики и информатики
В.И. Зубов
БАЗЫ ДАННЫХ
Учебно-методическое пособие
НОВОСИБИРСК

2007


Автор

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

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

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

Учебное пособие соответствует основным положениям, изложенным в монографии академика РАСН  Е.А. Соколкова «Модульная образовательная технология в преподавании гуманитарных наук».
Печатается по решению кафедры математики и информатики.
Ó      Новосибирский гуманитарный институт, 2007

Ó      В.И. Зубов, 2007




СОДЕРЖАНИЕ

Введение. 5

Методические рекомендации для студентов по использованию учебно-методического пособия «БАЗЫ ДАННЫХ». 7

Методические рекомендации для преподавателей по использованию учебно-методического пособия «БАЗЫ ДАННЫХ». 9

Базы данных и системы управления базами данных. 11

Основные понятия и определения. 11

Базы данных. 11

Системы управления базами данных. 12

Схема данных. 18

Объекты базы данных. 19

Виды СУБД.. 25

Локальные и сетевые базы данных. 26

Локальные базы данных. 26

Сетевые базы данных. 27

Режимы работы с базами данных. 28

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

Безопасность баз данных. 31

Работа с СУБД Microsoft Access 2000. 33

Общие замечания' 33

Запуск и завершение работы программы MS Access. 33

Интерфейс Access. 34

Окно базы данных. 35

Средства конструирования объектов. 37

Мастера Access. 37

Создание базы данных. 39

Размещение базы данных. 40

Создание файла базы данных Access. 40

Создание таблиц базы данных. 41

Упражнение 1. Создание файла базы данных и структуры таблиц. 49

Создание схемы данных. 54

Модификация структуры базы данных. 58

Упражнение 2. Создание схемы данных. 59

Непосредственный ввод данных в таблицу. 60

Макет таблицы.. 65

Упражнение 3. Непосредственный ввод данных в таблицы.. 66

Поиск, сортировка и фильтрация данных. 69

Упражнение 4. Поиск, сортировка и фильтрация данных в таблице. 72

Работа с запросами. 75

Создание запроса на выборку. 77

Упражнение 5. Создание запросов на выборку. 80

Запрос с параметром (параметрический запрос) 82

Упражнение 6. Создание параметрического запроса и работа с ним.. 83

Запрос с вычисляемыми полями. 84

Упражнение 7. Создание запроса с вычисляемыми полями. 85

Итоговые запросы.. 86

Упражнение 8. Создание итогового запроса. 87

Запросы на изменение. 88

Запрос на создание таблицы.. 88

Упражнение 9. Запросы на создание таблиц. 89

Запрос на обновление. 91

Упражнение 10. Создание запроса на обновление записей в таблице. 91

Запрос на добавление записей. 92

Упражнение 11. Создание запроса на добавление записей в таблице. 93

Запрос на удаление записей. 93

Упражнение 12. Создание запроса на удаление записей в таблице. 94

Перекрестный запрос. 95

Упражнение 13. Создание перекрестного запроса. 95

Работа с формами. 96

Автоформы.. 97

Упражнение 14. Создание автоформ. Работа с формами. 99

Создание форм с помощью мастера. 101

Многотабличные формы.. 102

Упражнение 15. Создание многотабличной формы с помощью мастера. 102

Конструирование формы.. 105

Структура формы.. 106

Упражнение 16. Доработка формы в режиме Конструктора. 112

Вычисления в форме. 117

Ограничения доступа к данным через форму. 120

Упражнение 17. Создание форм с вычисляемым полем.. 121

Работа с отчетами. 122

Режимы работы с отчетом.. 124

Сортировка и группировка в отчете. 126

Упражнение 18. Создание отчетов. 127

Использование вычисляемых значений. 132

Предварительный просмотр и печать отчета. 133

Упражнение 19. Создание отчета на основе запроса. 133

Построение диаграмм. 138

Обмен данными. 141

Экспорт данных. 142

Импорт и связывание данных. 143

Импорт данных. 143

Связывание данных. 143

Упражнение 20. Экспорт и импорт данных. 144

Литература. 148



Введение


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

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

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

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

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

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

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

Методические рекомендации для студентов по использованию учебно-методического пособия «БАЗЫ ДАННЫХ»


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

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

3.     Студенты экономического факультета должны выполнить все упражнения, приведенные в учебно-методическом пособии. Студенты юридического и психологического факультетов должны выполнить упражнения: 1 – 7, 14, 15, 18 и 20.

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

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

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

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

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

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

10. После того, как Вы прочитаете все учебно-методическое пособие до конца и выполните все упражнения, необходимо повторно еще раз прочитать всю теоретическую часть данного учебно-методического пособия. При этом желательно открыть на своем компьютере базу данных «Цифровая техника» и объект базы данных, который рассматривается в соответствующей главе учебно-методического пособия. Это позволит Вам намного глубже понять рассматриваемые вопросы, так как Вы сможете в этом случае опираться на полученные ранее знания и умения.



Методические рекомендации для преподавателей по использованию учебно-методического пособия «БАЗЫ ДАННЫХ»


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

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

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

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

5.     Порядок выполнения студентами упражнений должен строго соответствовать их нумерации в данном учебно-методическом пособии, т.к. в последующих упражнениях используются результаты, полученные в предыдущих упражнениях. Студенты экономического факультета должны выполнить все упражнения, приведенные в учебно-методическом пособии. Студенты юридического и психологического факультетов должны выполнить упражнения: 1 – 7, 14, 15, 18, 20.

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

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



Базы данных и системы управления базами данных

Основные понятия и определения

Базы данных


В литературе можно встретить два, отличающихся друг от друга определения базы данных (БД). Одни авторы, например, С.В. Симонович, рассматривают базу данных как организованную структуру, предназначенную для хранения информации [6]. Другие авторы рассматривают базу данных как организованную на машинном носителе
интегрированную совокупность взаимосвязанных данных
(Ю. Бекаревич, Н. Пушкина [11]).

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

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

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

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

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

База данных это организованная на машинном носителе

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


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

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

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

Любая база данных должна удовлетворять следующим требованиям:

1. БД должна удовлетворять информационным требованиям организации.

2. БД должна обеспечивать получение требуемых данных за определенное время

3. БД должна легко расширяться и изменяться.

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

Системы управления базами данных


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

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

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

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

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

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

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

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

Почти все современные СУБД хранят и обрабатывают информацию на основе реляционной модели управления данными. Слово "реляционная" происходит от английского relation - отношение.

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

Access
, входящая в пакет Microsoft Office. Понятия, приемы и методы, рассмотренные на примере Access, могут быть успешно применены при работе с другими СУБД

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

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

В реляционной СУБД все данные, необходимые для решения задач предметной области, хранятся исключительно в таблицах (как правило, в базе данных несколько таблиц).

Каждая таблица содержит сведения об одной предметной сущности (например, о студентах или изучаемых предметах; о товарах или поставщиках и т.п.). Столбцы таблицы БД называются полями. Каждое из полей таблицы содержит какой-то один тип сведений о данной предметной сущности (например, фамилии студентов или даты их рождения). Поэтому каждая таблица содержит столько полей, сколько атрибутов предметной сущности требуется описать в таблице (рис. 1). Количество полей в таблице определяется на стадии создания структуры таблицы и в последующем, как правило, не меняется.
Рис. 1. Таблица, содержащая четыре типа данных о студентах и имеющая соответственно четыре поля.

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

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

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

Поля образуют структуру базы данных - ее основу и создаются на первом этапе создания базы данных (при ее разработке). Каждое поле обладает определенным набором свойств, которые задаются в обязательном порядке при создании структуры таблицы (задание свойств поля может быть выполнено в неявной форме, т.е. «по умолчанию»). От свойств поля зависит, какие данные в него можно вносить и какие операции, затем можно производить с содержимым поля (и соответственно, какие операции производить нельзя). Например, данные в поле Группа, можно отсортировать по возрастанию или убыванию, но вот суммировать их совершенно бессмысленно. В то же время, если таблица содержит данные о зарплате сотрудников, то данные в поле Зарплата, можно суммировать для получения значения Итого. Это значит, что указанные выше поля обладают разными свойствами и относятся к разным типам.

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

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

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

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

Логические связи между таблицами дают возможность объединять данные из разных таблиц. Связь каждой пары таблиц обеспечивается одинаковыми полями в них — ключом связи. Так обеспечивается рациональное хранение не дублированных данных и их объединение в соответствии с требованиями решаемых задач.

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

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

На рис.2 показаны две таблицы с перечнем кафедр и списком преподавателей, которые находятся в отношении типа 1:М и логически связаны с помощью общего поля (столбца) Код кафедры — ключа связи. Это поле является уникальным ключом в главной таблице кафедра, и не ключевым полем в подчиненной таблице — преподаватель.

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

Рис. 2. Две взаимосвязанные таблицы реляционной базы данных


Нормализация отношений - это процесс построения оптимальной структуры таблиц и связей в реляционной БД (процесс уменьшения избыточности информации).

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

Цели, которые преследуются при построении наиболее эффективной структуры данных:

1) обеспечить быстрый доступ к данным;

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

3) обеспечить целостность данных, т.е. чтобы при изменении одних объектов автоматически происходило соответствующее изменение связанных с ними объектов

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

Схема данных


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

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

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

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

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

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

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

Объекты базы данных


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

q       Таблицы;

q       Запросы;

q       Формы;

q       Отчеты;

q       Страницы;

q       Макросы;

q       Модули.

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

Таблицы. Это основные объекты любой базы данных. Во-первых, в таблицах хранятся все данные, имеющиеся в базе, а во-вторых, таблицы хранят и структуру базы (поля, их типы и свойства).

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

Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

q       Каждый элемент таблицы соответствует одному элементу данных.

q       Все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип.

q       Каждый столбец имеет уникальное имя.

q       Одинаковые строки в таблице отсутствуют.

q       Порядок следования строк и столбцов может быть произвольным.

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

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

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

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

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

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

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

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

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

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

Формы. Это, прежде всего средства для ввода данных. В то же время формы  можно использовать для просмотра имеющихся данных.

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

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

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

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

Рис. 3

. Форма Товары (отображена только одна запись, в данном случае вторая).

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

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

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

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

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

Страницы. Это специальные объекты баз данных. Более корректно их называть страницами доступа к данным. Физически это особый объект, выполненный в коде HTML
,
размещаемый на Web-странице и передаваемый клиенту вместе с ней. Сам по себе этот объект не является базой данных, но содержит компоненты, через которые осуществляется связь переданной Web-страницы с базой данных, остающейся на сервере. Пользуясь этими компонентами, посетитель Web-узла может просматривать записи базы в полях страницы доступа. Таким образом, страницы доступа к данным осуществляют интерфейс между клиентом, сервером и базой данных, размещенной на сервере. Эта база данных не обязательно должна быть базой данных Microsoft Access. Страницы доступа, созданные средствами Microsoft Access, позволяют работать также с базами данных Microsoft SQL Server.

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

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

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

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

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

Виды СУБД


Системы управления базами данных на общем уровне можно разделить на профессиональные (промышленные) и персональные.

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

·     возможность организации совместной параллельной работы большого числа пользователей;

·     возможность роста системы пропорционально расширению управляемого объекта;

·     переносимость на различные аппаратные и программные платформы;

·     обеспечение безопасности хранимых данных и наличие развитой системы доступа к ним.

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

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

·     относительно ограниченные требования к аппаратным ресурсам.

В настоящее время основными представителями профессиональных СУБД являются такие программные продукты, как Oracl
,
DB
2,
Sybase
,
Informix
Dynamic

Server
,
Progress
, Microsoft

SQL

Server
. Все перечисленные системы обладают следующими возможностями:

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

·     наличие инструментов создания объектов базы данных в режиме диалога;

·     наличие языка разработки приложений;

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

К числу известных персональных СУБД относятся: MS

Access
,
dBase, Clipper, Foxbase, FoxPro, R:BASE, Paradox, Data Ease, Clarion.

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

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

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

Локальные и сетевые базы данных


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

Локальные базы данных


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

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

Сетевые базы данных


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

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

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

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

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

 Запрос к серверу формируется на специальном языке структурированных запросов (Structured Query Language, SQL), поэтому часто серверы БД называются SQL-серверами. Серверы БД представляют собой относительно сложные программы, изготавливаемые различными фирмами. К ним относятся, например, Microsoft SQL Server производства корпорации Microsoft
,
Sybase SQL Server корпорации Sybase
,
Oracle производства одноименной корпорации, DB2 корпорации IBM
и др. Клиент-серверные СУБД масштабируются до сотен и тысяч клиентских мест.

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

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

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

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

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

Режимы работы с базами данных


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

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

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

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

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

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

Режим работы с базой выбирается с помощь командных кнопок: Открыть, Конструктор, Создать.

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

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


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

Сжатие БД необходимо, когда Вы очень интенсивно модифицируйте БД либо в процессе разработки новых объектов (таблиц, форм, отчетов, запросов, модулей) либо в процессе добавления и удаления данных. В этих случаях все удаляемые объекты и данные удаляются логически, т.е. физически расположены внутри файла *.mdb, который разрастается значительно и более сложно администрируется. Именно для этого и используется режим сжатия. Операция сжатия проводится над закрытой БД, рекомендуется сначала присвоить сжатой БД новое имя и только после благополучного завершения операции уничтожить старую копию и переименовать сжатую БД. Для проведения операции сжатия необходимо выбрать меню Сервис ► Служебные программы ►Сжать.

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

Кроме того, в пункте меню Сервис находятся еще разделы, связанные с различными настройками. К ним относятся:

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

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

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

Безопасность баз данных


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

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

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

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

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

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

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

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

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

.

Работа с СУБД Microsoft Access 2000

Общие замечания'


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

СУБД Microsoft Access 2000 предоставляет несколько средств создания каждого из основных объектов базы. Эти средства можно классифицировать как:

        ручные (разработка объектов в режиме Конструктора);

        автоматизированные (разработка с помощью программ-мастеров);

        автоматические — средства ускоренной разработки простейших объектов.

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

1.                 При разработке учебных таблиц и запросов рекомендуется использовать ручные средства — работать в режиме Конструктора.

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

Запуск и завершение работы программы MS Access


В стандартном случае запуск программ MS Access выполняется с помощью команды Пуск ► Программы ► Microsoft

Access
, либо с помощью значка , (если он присутствует на Рабочем столе).

Завершение работы программы выполняется стандартными способами, в том числе: сочетанием клавиш Alt
+
F
4
или командой Файл Выход.

Интерфейс Access


Access имеет характерный для всех приложений Microsoft Windows удобный графический интерфейс, ориентированный на комфортную работу пользователя (рис. 4). Для работы с таблицами базы данных и другими объектами Access предоставляет многочисленные команды меню и контекстно-зависимые панели инструментов. Поскольку интерфейс приложений Microsoft Office унифицирован, пользователю требуется меньше времени на освоение приложения.



Рис. 4. Окно MS Access с окном базы данных Торговля.

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

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

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

Окно базы данных


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

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

Рис. 5

. Окно Базы данных Торговля с отображением таблиц БД.

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

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

В верхней части окна расположены кнопки для выбора режима работы с предварительно выделенным объектом:

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

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

q       Создать – позволяет приступить к созданию нового объекта любого выбранного типа.

Справа от рассмотренных выше кнопок имеется кнопка Удалить, позволяющая удалять выбранный объект, а также четыре кнопки изменения режима представления объектов в окне базы данных: Крупные значки, Мелкие значки, Список, Таблица.

Средства конструирования объектов


С помощью Access обычные пользователи получили удобное средство для создания и эксплуатации достаточно мощных баз данных без необходимости что-либо программировать. В то же время работа с Access не исключает возможности программирования. При желании систему можно развивать и настраивать собственными силами. Для этого надо владеть основами программирования на языке Microsoft Visual Basic for Applications (VBA).

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

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

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

Мастера Access


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

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

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

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

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

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

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

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

Мастера импорта таблиц и объектов  вызываются командой меню Файл ► Внешние данные ► Импорт  и позволяют импортировать таблицы и объекты из внешнего файла в текущую базу, путем выполнения элементарные действия по выбору файла и нужных объектов. Импортировать данные можно из файла другой базы данных Access, а также из файлов Ехсеl, Lotus, Paradox, dBase и других баз данных. Возможен импорт текстовых файлов и НТМL-таблиц и списков из Internet или intranet в таблицу Access.

Мастера экспорта вызываются командой меню Файл Экспорт  и позволяют экспортировать объекты (одновременно только один объект) базы данных в другие базы данных Access, в базы данных многих других СУБД. Объекты могут быть экспортированы в текстовые файлы, различные электронные таблицы, опубликованы на статических и динамических страницах Internet или intranet.

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

Создание базы данных


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

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

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

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

Размещение базы данных


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

Создание файла базы данных Access


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

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

Access
выбрать Новая база данных (рис. 6).После этого появится окно Файл новой базы данных. В этим окне нужно выбрать папку, в которой будет размещен файл, задать имя файла новой базы данных и нажать кнопку Создать. В результате открывается окно новой базы данных <имя БД>: база данных, причем <имя БД> соответствует имени, заданному в окне Файл новой базы данных.

Рис. 6
. Окно Microsoft Access Создания/Открытия базы данных

Тип файла по умолчанию имеет значение Базы данных Microsoft

Access
(
Microsoft

Access

Databases
)
, что приводит к созданию файла базы данных, имеющего расширение *.mdb. Это расширение является зарегистрированным в Windows для данного типа файлов и связывается с программой Access.

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


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

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

Определение структуры новой таблицы в режиме конструктора


При выборе режима конструктора таблиц появляется окно Таблица1: таблица (рис. 7.). То, что отображается на экране в этом режиме, фактически является графическим бланком для создания и редактирования структуры таблиц.

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

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

Для каждого поля создаваемой таблицы в окне конструктора нужно:

q       В столбце Имя поля ввести имя поля. Имя поля — определяет, как следует обращаться к данным этого поля при автоматических операциях с базой (по умолчанию имена полей используются в качестве заголовков столбцов таблиц). Каждое поле в таблице должно иметь уникальное имя, удовлетворяющее соглашениям об именах объектов Access. Оно является комбинацией из букв, цифр, пробелов и специальных символов за исключением точки (.), восклицательного знака (!) и квадратных скобок ([ ]). Имя не может начинаться с пробела. Максимальная длина имени – 64 символа.
Рис. 7

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


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

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

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

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

Типы данных


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

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

Текстовый — тип данных по умолчанию. Текст или цифры, не участвующие в расчетах, например номер телефона. Число символов в поле не должно превышать 255. Максимальное число символов, которое можно ввести в поле, задается в свойстве Размер поля.

Поле МЕМО — специальный тип данных для хранения больших объемов текста (до 65 535 символов). Физически текст не хранится в поле. Он хранится в другом месте базы данных, а в поле хранится указатель на него, но для пользователя такое разделение заметно не всегда.

Числовой — для хранения числовых данных, используемых в вычислениях. Конкретные варианты числового типа и их длина задаются в свойстве Размер поля.

Дата/время — тип данных для хранения календарных дат и текущего времени.

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

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

Логический — для хранения логических данных (данные в этом поле могут принимать только два значения, например Да или Нет).

Поле объекта OLE — специальный тип данных – объект (например документ Microsoft Word, рисунок, звукозапись или другие данные в двоичном формате), связанный или внедренный с помощью технологии OLE в таблицу Access. Реально такие объекты в таблице не хранятся. Как и в случае полей MEMO, они хранятся в другом месте внутренней структуры файла базы данных, а в таблице хранятся только указатели на них. Длина поля – не более 1 Гбайт.

Гиперссылка — специальное поле для хранения адресов гиперссылки, включающий путь к файлу на жестком диске в локальной сети (в формате UNC) или адрес Web-страницы в Internet или intranet (URL
)
. Кроме того, адрес может включать текст, выводимый в поле или элементе управления, дополнительный адрес – расположение внутри файла или страницы, подсказку – текст отображаемый в виде всплывающей подсказки. Если щелкнуть мышью  на поле гиперссылки, Access выполнит переход на соответствующий объект, документ, Web-страницу или другое место назначения. Длина каждой из частей гиперссылки - не более 2048 знаков. Для полей типа OLE
, МЕМО
и Гиперссылка не допускается сортировка и индексирование.

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

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


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

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

Ниже приведены некоторые, наиболее важные свойства полей.
Общие свойства поля

q       Размер поля — задает максимальный размер сохраняемых в поле данных.
 Для поля с типом данных Текстовый задается размер от 1 до 255 знаков (по умолчанию – 50 символов).
Для поля с типом данных Числовой можно задать:


·        Байт – позволяет хранить целые числа от 0 до 255 и занимает 1 байт памяти;

·        Целое – позволяет хранить целые числа от -32768 до +32767 и занимает 2 байта памяти;

·        Длинное целое – позволяет хранить целые числа от –2 147 483 648 до +2 147 483 647 и занимает 4 байта памяти;

·        Одинарное с плавающей точкой – позволяет хранить числа с точностью до 7 значащих цифр в диапазоне от –3,4×1038 до +3,4×1038  и занимает 4 байта памяти;

·        Двойное с плавающей точкой – позволяет хранить числа с точностью до 15 значащих цифр в диапазоне от –1,797×10308 до +1,797×10308  и занимает 8 байт памяти;

·        Действительное - позволяет хранить десятичные значения с заданной точностью в диапазоне от –1028 до +1028  и занимает 12 байт.

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

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

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

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

q       Маска ввода — определяет форму, в которой вводятся данные в поле. Маска ввода предусмотрена для полей с типами данных Текстовый, Числовой, Дата/время, и Денежный. Например, можно сделать так, чтобы Access выводил разделители (__/__/__) для поля, предназначенного для ввода дат, или задать маску для ввода телефонного номера: (# # #) 000-0000.

q       Подпись — определяет заголовок столбца таблицы для данного поля (если подпись не указана, то в качестве заголовка столбца используется Имя поля).

q       Значение по умолчанию — (средство автоматизации ввода данных) определяет текст или выражение, которое автоматически вводится в поле при создании новой записи. При добавлении записи в таблицу можно оставить значение, введенное по умолчанию, или ввести другое. Свойство Значение по умолчанию используется только при создании новой записи. Изменение значения свойства не влияет на существующие записи. Максимальная длина значения свойства составляет 255 знаков. Данное свойство не определено для полей с типом данных Счетчик и Поле объекта OLE.

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

q       Сообщение об ошибке — текстовое сообщение, которое выдается автоматически при попытке ввода в поле ошибочных данных (проверка ошибочности выполняется автоматически, если задано свойство Условие на значение).

q       Обязательное поле — свойство, определяющее обязательность заполнения данного поля при создании записи в процессе наполнения базы данных.

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

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

Допустимы следующие значения свойства “Индексированное поле” (таблица 1).

Таблица 1

Значение

 Описание

Нет

Не создает индекс по данному полю (используется по умолчанию)

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

Создает индекс по данному полю

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

Создает уникальный индекс по данному полю

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

q       Сжатие ЮникодAccess хранит символьные поля в MDB-файле с использованием двухбайтного (Unicode) набора символов, что позволяет поддерживать расширенные наборы символов для тех языков, в которых они требуются. По умолчанию для новых таблиц это свойство устанавливается в значение Да. Это означает, что все символы, первый байт которых в кодировке Unicode равен 0, будут сжиматься до одного байта при сохранении и восстанавливаться при выборке.

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

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

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

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

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

Определение первичного ключа


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

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

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

Если первичный ключ необходим для связи с другими таблицами, но ни одно из полей не является уникальным, то первичный ключ можно создать на базе двух или более полей. Эта операция выполняется точно так же, через контекстное меню, надо только выделить сразу несколько полей. Групповое выделение выполняют при нажатой клавише <Ctrl
>
щелчками на квадратных маркерах слева от имен полей.

Ключ, включающий одно поле, называется простым, а ключ, включающий два или более полей, называется составным. Для ключевого поля автоматически задается свойство – индексированное поле.

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

Сохранение таблицы


После определения структуры таблицы ее необходимо сохранить. Это можно выполнить несколькими способами: с помощью команды ФайлСохранить; с помощью кнопки Сохранить на панели инструментов конструктора или путем закрытия окна конструктора (при этом система выдает запрос на сохранение таблицы). Во всех случаях открывается окно Сохранение (рис. 8). Имя таблицы должно быть информативным, но не может превышать 64 знака. При сохранении таблицы происходит обновление файла базы данных, в которую помещается созданная таблица. Значок вновь созданной таблицы с ее именем появляется в основном окне База данных.



Рис. 8. Окно Сохранение

Скругленный прямоугольник: Замечание

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

Упражнение 1. Создание файла базы данных и структуры таблиц


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

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

1.     Создайте файл базы данных. Для этого:

a.       запустите программу Microsoft Access  (Пуск ► Программы ► Microsoft

Access
).

b.     В открывшемся окне Microsoft

Access
включите переключатель Новая база данных и щелкните на кнопке ОК.

c.     В следующем открывшемся окне Файл новой базы данных выберите папку для сохранения файла и задайте имя файла: Цифровая техника. Затем щелкните на кнопке Создать. Откроется окно новой базы — Цифровая техника : база данных (рис.9).



Рис. 9. Окно базы данных Цифровая техника (пока пустое).

2.     Создание таблицы. Выполните создание таблицы ТОВАРЫ в режиме Конструктора. Для этого:

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

b.     Создайте структуру таблицы ТОВАРЫ.

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



Рис. 10. Таблица ТОВАРЫ в режиме Структура для задания имен полей и типа данных для каждого поля

d.     В качестве ключевого поля укажите поле Код товара. Для этого установите курсор в это поле и нажмите на панели инструментов кнопку Ключевое поле .

Таблица 2

Имя поля

Тип данных

Ключ

Размер

Обязательное поле

Индексированное поле

Код товара

Счетчик



Длинное целое



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

Код поставщика

Текстовый



3

Да

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

Название

Текстовый



20

Да

Нет

Марка

Текстовый



10

Да

Нет

Модель

Текстовый



20

Нет

Нет

Цена

Денежный





Да

Нет

Техн_характ

МЕМО





Нет





e.      Сохраните созданную таблицу, присвоив ей имя ТОВАРЫ. В окне Цифровая техника:
База данных
появится значок созданной таблицы.

3.     Откройте созданную таблицу в режиме Таблица. Для этого выполните двойной щелчок на значке таблицы ТОВАРЫ или нажмите кнопку Открыть при выделенном значке таблицы ТОВАРЫ. Убедитесь, что таблица пустая, т.е. не содержит записей, а заголовки столбцов таблицы соответствуют заданным именам полей.

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

4.     Создание списков с помощью Мастера подстановок. Для создания списка товаров установите курсор в поле выбора типа данных в строке Название. Раскройте список типов данных и выберите Мастер подстановок (при этом ранее выбранный тип данных Текстовый не изменится). Запустится Мастер подстановок.

a.      На первом шаге работы Мастера подстановок установите переключатель в положение Будет введен фиксированный набор значений и нажмите кнопку Далее >.

b.     На втором шаге введите в один столбец перечень названий товаров: Ноутбук, Накопитель HDD, Привод DVD-RW, Сканер, Цифровой фотоаппарат, Цифровая видеокамера, Плеер mp3 (рис. 11), а затем нажмите кнопку Далее >.

c.     На третьем шаге нажмите кнопку Готово, не изменяя подпись, которую содержит столбец подстановки.

d.     Находясь в режиме Конструктора, переключитесь на вкладку Подстановка и убедитесь, что параметр Тип элемента управления имеет значение Поле со списком, а Источник строк содержит перечень названий товаров. При этом название каждого товара заключено в прямые кавычки ("  ") и отделено друг от друга точкой с запятой без пробела[2]. При необходимости исправить или дополнить список товаров это можно сделать в данной строке с соблюдением правил синтаксиса Access.



Рис. 11. Окно мастера подстановки (шаг 2). Создание подстановки для ускорения ввода названий товаров.

e.      Аналогичным способом создайте список для поля Марка. Список должен содержать названия следующих фирм: ACER, ASUS, Canon, Panasonic, Samsung, Seagate, Sony.

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

5.     Установите курсор на поле Название. Убедитесь в наличии кнопки списка  в этом поле. Щелчком мыши откройте список и убедитесь в наличии списка названий товаров. В дальнейшем при ввода данных в таблицу необходимые значения нужно выбирать из этого списка. Аналогичным образом убедитесь в наличии списка в поле Марка.

6.     Создайте таблицу ПОСТАВЩИКИ. Имена полей, типы данных и свойства полей указаны в таблице 3. В качестве ключевого поля укажите поле Код поставщика.

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

Таблица 3

Имя поля

Тип данных

Ключ

Размер

Обязательное поле

Индексированное поле

Код поставщика

Текстовый



3

Да

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

Название фирмы

Текстовый



20

Да

Нет

Город

Текстовый



20

Да

Нет

Адрес

Текстовый



20

Нет

Нет

Телефон

Денежный



20

Нет

Нет

Создание схемы данных


После создания структур таблиц БД следует создать схему данных. Предварительно все таблицы БД должны быть закрыты. Создавать или изменять связи между открытыми таблицами нельзя.

Создание схемы данных начинается в окне База данных с выбора команды Сервис ► Схема данных. После выполнения указанной команды открывается два окна: Схема данных и Добавление таблицы, при этом активным является окно Добавление таблицы (рис. 12), в котором можно выбрать включаемые в схему данных таблицы.



Рис. 12. Два окна: Схема данных и Добавление таблицы

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

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

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

После выполнения указанных действий откроется окно Изменение связей (рис. 13). При этом в поле Тип отношения автоматически установится значение один-ко-многим.



Рис. 13. Окно Изменение связей

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

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

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

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

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

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

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

Установление между двумя таблицами связи типа 1:М или 1:1 и задание для этой связи параметров целостности данных возможно только при следующих условиях:

q       Связываемые поля имеют одинаковый тип данных;

q       Обе таблицы сохраняются в одной базе данных;

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

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

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

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

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

Образовавшаяся межтабличная связь отображается в окне Схема данных в виде линии, соединяющей два поля разных таблиц. При этом на линии связи у главной таблицы отображается символ - 1, у подчиненной таблицы символ – бесконечность (¥) (рис. 14).



Рис. 14. Схема данных. Связь двух таблиц по ключевому полю Код поставщика.

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

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



Рис. 15. Таблица ПОСТАВЩИКИ является главной таблицей. Символы  слева от записей указывают на наличие связанных записей в подчиненной таблице.



Рис. 16. Таблица ПОСТАВЩИКИ. Показаны записи в подчиненной таблице ТОВАРЫ, поставляемые формой Кардинал (символ  преобразовался в символ )

Модификация структуры базы данных


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

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

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

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

Упражнение 2. Создание схемы данных


1.     Откройте ранее созданный файл базы данных Цифровая техника.

2.     Выберите таблицы, между которыми будет устанавливаться связь. Для этого:

a.      Выполните команду СервисСхема данных. При этом одновременно с окном Схема данных открывается окно Добавление таблицы. Выделите таблицы (обе сразу или по очереди) и нажмите кнопку Добавить. Обе таблицы будут представлены на схеме данных.

b.     Закройте окно Добавление таблицы.

3.     Установите связь между таблицами ПОСТАВЩИКИ и ТОВАРЫ. Для этого:

a.      Выделите в таблице ПОСТАВЩИКИ поле Код поставщика и мышью перетащите его на поле Код поставщика в таблице ТОВАРЫ.

b.     В открывшемся окне Изменение связей убедитесь, что главной таблицей для связи является таблица ПОСТАВЩИКИ, а связанной таблицей является таблица ТОВАРЫ. При этом полем для связи в обеих таблицах является поле  Код поставщика. Нажмите кнопку Создать.

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

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

4.     Установите обеспечение целостности связанных данных и параметры целостности данных. Для этого:

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


Рис. 17. Диалоговое окно Изменение связей.

b.     Установите флажок Обеспечение целостности данных, а затем флажки каскадное обновление связанных полей и каскадное удаление связанных записей (рис. 17). Нажмите кнопку ОК.

c.     Обратите внимание, как изменился внешний вид линии соединяющей таблицы.

5.     Закройте окно Схема данных с сохранением созданной схемы.

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

Непосредственный ввод данных в таблицу


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

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

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

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

Рис. 18
. Панель инструментов Таблица в режиме таблицы

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

q      При помещении курсора в любую строку (запись) таблицы в поле маркировки этой записи появится маркер "стрелка вправо» (►), означающий, что данная запись является текущей.

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

q      При нажатии клавиши <Delete> ячейка очищается.

q      Можно редактировать текущее значение, меняя в нем отдельные символы. Для этого надо в ячейке таблицы дважды щелкнуть мышью или нажать клавишу <F
2
>.

q      При нажатии клавиши <Enter> или <Таb> в ячейку заносится новое значение и выполняется переход к следующей ячейке.

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

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

q      Чтобы удалить запись, сначала надо выделить ее, а затем выполнить команду Правка ► Удалить, или щелкнуть мышью на кнопке панели инструментов Удалить запись  или нажать клавишу <Delete>. Аналогичным способом можно удалить сразу несколько записей.

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

Для всех типов полей (кроме типов Счетчик и поле объекта OLE) можно самостоятельно задавать ограничения для вводимых данных. Для этого в режиме конструктора надо выбрать вкладку Общие, установить курсор в строке  Условия на значение и ввести ограничение на данные. Например, для поля Стаж работы можно ввести  <70. Тогда значения равные и большие 70 ввести в это поле будет невозможно. Ограничение можно вводить и на текстовое поле, Обычно в этом случае задаются слова, которые могут присутствовать в данном поле.

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



Рис. 19. Построитель выражений

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

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

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

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

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

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

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

Для повышения эффективности работы с таблицей следует запомнить и отработать следующие приемы управления с помощью мыши:

1.     Каждая запись имеет слева кнопку (маркер записи). Щелчок на этом маркере выделяет всю запись и готовит ее к копированию, перемещению, удалению.

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

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

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

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

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

Макет таблицы


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

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

Многие операции настройки макета можно выполнить непосредственно в таблице с помощью мыши.

q       Изменение ширины столбца. (Смотри предыдущий параграф).

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

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

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

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

Упражнение 3. Непосредственный ввод данных в таблицы


1.     Откройте ранее созданный файл базы данных Цифровая техника.

2.     Откройте таблицу ТОВАРЫ и попытайтесь внести в нее первую запись (смотри таблицу 4) Убедитесь, что при попытке перехода ко второй записи Access выдает сообщение о невозможности внесения первой записи.

Это связано с тем, что в главной таблице, которой является таблица  ПОСТАВЩИКИ, отсутствует запись о поставщике (коде поставщика). Таблица ТОВАРЫ является зависимой, а поскольку ранее вы установили параметр обеспечения связанной целостности данных, Access не позволит вам внести данные о поставщике в таблицу ТОВАРЫ до тех пор, пока вы не внесете соответствующие данные в таблицу ПОСТАВЩИКИ. Следовательно, необходимо сначала внести данные в таблицу ПОСТАВЩИКИ и только затем заполнять таблицу ТОВАРЫ.

3.     Откройте таблицу ПОСТАВЩИКИ и внесите в нее данные в соответствии с таблицей 4

Таблица 4

Код поставщика

Название фирмы

Город

Адрес

Телефон

101

Байт

Москва

Кутузовский пр. 102

(495) 233-23-23

102

Кардинал

Москва

Нахимовский пр. 45

(495) 456-56-56

103

Мир

Новосибирск

Красный пр. 79

(383) 256-60-60

4.     Установите ширину столбцов таким образом, чтобы внесенные данные отображались полностью. Закройте таблицу ПОСТАВЩИКИ.

5.     Для ускорения ввода повторяющихся данных о коде поставщиков в таблицу ТОВАРЫ создайте с помощью мастера подстановок список поставщиков для таблицы ТОВАРЫ. При этом в качестве источника данных о коде поставщиков используйте данные таблицы ПОСТАВЩИКИ. Для этого:

a.      Откройте таблицу ТОВАРЫ в режиме конструктора;

b.     Запустите мастер подстановок для поля Код поставщика;

c.     На первом шаге работы Мастера подстановок установите переключатель в положение Объект «столбец подстановки» будет использовать значения из таблицы или запроса и нажмите кнопку Далее >;

d.      На втором шаге работы Мастера подстановок выберите таблицу ПОСТАВЩИКИ и нажмите кнопку Далее >;

e.      На третьем шаге работы Мастера подстановок выберите поле Код поставщика и нажмите кнопку Далее >;

f.       На четвертом и пятом шагах работы Мастера подстановок ничего не изменяйте и нажмите кнопку Готово;

g.     На свойствах поля переключитесь на вкладку Подстановка и обратите внимание на параметр Источник строк;

h.     Сохраните изменения в структуре таблицы ТОВАРЫ и откройте ее в режиме таблицы. Убедитесь в наличии списка в поле Код поставщика.

6.     Внесите данные в таблицу ТОВАРЫ в соответствии с таблицей 5. При этом значения данных, вводимых в поля Код поставщика, Название, Марка, выбирайте из ранее подготовленного списка. Обратите внимание на формат данных в поле Цена (не удаляйте запятую «,00р.» и точку после буквы р). Поле Техн_Характ не заполняйте.


Таблица 5

Код товара

Код поставщика

Название

Марка

Модель

Цена

1

101

Ноутбук

ACER

9504WSM

62 550р.

2

102

Ноутбук

ACER

1642WLM

30 350р.

3

103

Ноутбук

ACER

3004LCM

23 900р.

4

101

Ноутбук

ASUS

А3500

35 600р.

5

102

Ноутбук

Sumsung

Р-27

21 390р.

6

103

Ноутбук

Sumsung

Р-40

40 200р.

7

103

Ноутбук

Sumsung

Х-50

70 990р.

8

101

Накопитель HDD

Seagate

120Gb

2 160р.

9

102

Накопитель HDD

Seagate

200Gb

2 720р.

10

103

Накопитель HDD

Seagate

300Gb

4 360р.

11

101

Накопитель HDD

Seagate

400Gb

8 100р.

12

101

Привод DVD-RW

ACER



1 350р.

13

102

Привод DVD-RW

ASUS



1 230р.

14

103

Привод DVD-RW

Sony



2 430р.

15

101

Сканер

Canon

500F

3 870р.

16

102

Сканер

Canon

CS4200

2 950р.

17

101

Цифровой фотоаппарат

Canon

EOS 350

25 200р.

18

102

Цифровой фотоаппарат

Canon

F410

3 320р.

19

103

Цифровой фотоаппарат

Sony

Т5

7 120р.

20

101

Цифровая видаокамера

Sony

DCR-PC-55E

15 370р.

21

102

Плеер mp3

Panasonic

MP100VG

1 670р.

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

7.     Установите ширину столбцов таким образом, чтобы внесенные данные отображались полностью. Закройте таблицу ТОВАРЫ.

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

Поиск, сортировка и фильтрация данных


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

Поиск и замена значений в полях


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

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

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

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

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

Сортировка записей


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

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

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

Фильтрация записей


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

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

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

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

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

q       обычный фильтр вызывается командой Записи ► Фильтр ► Изменить фильтр. Данный фильтр определяет, какие записи выводятся на экран путем выбора в качестве условия значения из списка значений выбранного поля. Ввод значений в несколько полей одной строки фильтра определяют отбор записей, в которых присутствуют все указанные значения. При этом заданные значения рассматриваются как объединяемые логической операцией «И».

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

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

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

q       расширенный фильтр вызывается командой Записи ► Фильтр ► Расширенный фильтр. При этом открывается окно расширенного фильтра. В верхней части этого окна выводится список полей активной таблицы. В нижней части окна выводится бланк запроса (рис. 20).



Рис. 20. Окно расширенного фильтра таблицы ТОВАРЫ.

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

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

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

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

Упражнение 4. Поиск, сортировка и фильтрация данных в таблице


1.     Откройте файл базы данных Цифровая техника.

2.     Откройте таблицу ТОВАРЫ. Выполните в ней поиск всех товаров фирмы Sony. Для этого:

a.       установите курсор на поле Марка в первой записи. Затем щелкните на кнопке Найти. Откроется диалоговое окно Поиск и замена (рис. 21).

b.     Введите в поле Образец требуемый образец поиска (Sony) и нажимая кнопку Найти далее найдите поочередно все записи о товарах фирмы Sony.



Рис. 21. Диалоговое окно Поиск и замена

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

4.     Отобразите исходное состояние таблицы, выполнив сортировку по полю Код товара (по возрастанию).

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

6.     Используя фильтрацию, отобразите данные только о цифровых фотоаппаратах и цифровых видеокамерах. Для этого в записи о цифровом фотоаппарате выделите корень слова Цифр и выполните команду Фильтр по выделенному. Проанализируйте полученный результат. Удалите фильтр.

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

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

a.      Выполните команду Записи ► Фильтр ► Расширенный фильтр.

b.      В открывшемся диалоговом окне расширенного фильтра удалите ранее использовавшийся фильтр. Для этого выделите столбец (или группу столбцов) на нижней панели окна фильтра и удалите их клавишей <Delete>.

c.     На верней панели окна фильтра отображена таблица ТОВАРЫ в виде списка полей. Выполните двойной щелчок на поле Цена.

d.     На нижней панели окна фильтра в строке Поле появится выбранное поле Цена. В строке Условие отбора введите требуемое условие. В данном случае нужно ввести >8000. В строке сортировка  выберите порядок сортировки по возрастанию (рис.22).



Рис. 22. Формирование условия отбора по цене в окне расширенного фильтра

e.      Нажмите кнопку Применение фильтра  (или выполните команду ЗаписиПрименить фильтр.

f.       Проанализируйте полученный результат.

9.     Используя расширенный фильтр, отобразите данные о товарах, цена которых меньше 15000. Затем измените фильтр таким образом, чтобы отобразить только записи о товарах в ценовом диапазоне от 10000 до 30000.

10. Отобразите записи о ноутбуках, цена которых находится в диапазоне от 30000 до 50000.

11. Измените фильтр, созданный в предыдущем пункте так, чтобы кроме ноутбуков в ценовом диапазоне от 30000 до 50000 отображались бы все товары фирмы Sony. Отобразите записи обо всех товарах.

12. Отобразите на экране только данные полей Название, Марка и Цена, скрыв с экрана данные других полей. Для этого установите курсор в поле, которое нужно скрыть и выполните команду Формат ► Скрыть столбец
(если нужно скрыть сразу несколько столбцов, то предварительно выделите соответствующие столбцы). Проанализируйте полученный результат.

13. Вновь отобразите все столбцы. Для этого выполните команду Формат ► Отобразить столбцы. В открывшемся окне Отображение столбцов (рис. 23) установите флажки напротив всех столбцов. Окно Отображение столбцов  можно использовать и для скрытия столбцов путем снятия соответствующих флажков.



Рис. 23. Окно Отображение столбцов

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

Работа с запросами


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

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

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

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

Access позволяет создавать и выполнять следующие типы запросов:

1.     QBE-запросы (QBEQuery By Example – Запросы по образцу).

·        Запрос на выборку;

·        Параметрический запрос;

·        Запрос с вычисляемыми полями;

·        Итоговый запрос;

·        Перекрестный запрос;

·        Запрос на создание таблицы;

·        Запрос на обновление;

·        Запрос на добавление записей;

·        Запрос на удаление записей.

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

2.     Запросы на языке
SQL
(Structured Query Lenguage – Структурированный язык запросов). Составление таких запросов в данном учебном пособии не рассматривается.

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

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


Рис. 24. Бланк запроса по образцу

Создание запроса на выборку


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

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

В результате появится окно конструктора запросов – Запрос
N: запрос на выборку
(рис. 24.). Окно конструктора запросов разделено на две панели. Верхняя панель содержит схему данных запроса, которая включает выбранные для данного запроса таблицы. Таблицы представлены списками полей. Первая строка в списке полей, отмеченная звездочкой (*), обозначает все множество полей таблицы. Нижняя панель является бланком запроса по образцу – QBE, который необходимо заполнить.

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

При заполнении бланка запроса:

q       В строку Поле включаются имена используемых в запросе полей;

q       В раскрывающемся списке Сортировка выбирается порядок сортировки записей результирующей таблицы;

q       В строке Вывод на экран устанавливаются флажки для полей, которые должны быть отображены на экране;

q       В строке Условие отбора задаются условия отбора записей;

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

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

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

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

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

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

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

Операторами сравнения и логическими операторами, использование которых допускается в выражении условия отбора являются: = (равно), > (больше), >= (не менее),  < (меньше), <= (не более), Between, In, Like,  And, Or, Not. Если выражение в условии отбора не содержит оператора, то по умолчанию используется оператор = (равно).

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

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

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

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

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

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

После сохранения запроса его значок появляется в окне База данных. Двойным щелчком на этом значке запрос можно запустить. Запрос можно запустить и до его сохранения из режима Конструктор с помощью кнопки Запуск  (или команды Запрос ► Запуск).

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

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

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

Упражнение 5. Создание запросов на выборку


1.     Откройте файл базы данных Цифровая техника.

2.     Создайте запрос на выборку на основе таблицы ТОВАРЫ. Создаваемый запрос должен включать в себя три поля: Название, Марка, Цена. Для создания запроса:

a.      Нажмите кнопку Запросы  на панели Объекты. Затем выполните двойной щелчок на кнопке Создание запроса в режиме конструктора. Откроется окно конструктора запросов – Запрос1: запрос на выборку а также окно Добавление таблицы.

b.     В окне Добавление таблицы выберите таблицу ТОВАРЫ и закройте это окно.

c.      Для включения требуемого поля в запрос выполните двойной щелчок на соответствующем поле таблицы ТОВАРЫ, представленной в верхней части окна конструктора запросов. После этого имя выбранного поля появляется в строке Поле бланка запроса (рис. 25).



Рис. 25. Конструирование запроса на выборку.

d.     С целью сортировки записей в виртуальной таблице, создаваемой при выполнении запроса, в строке Сортировка в поле Цена установите  вариант сортировки по возрастанию.

e.      Запустите запрос с помощью кнопки Запуск  на панели инструментов.

f.       Проанализируйте полученную в результате выполнения таблицу.

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

3.     Создайте запрос на выборку на основе двух таблиц: ТОВАРЫ и ПОСТАВЩИКИ. Создаваемый запрос должен включать в себя следующие поля: Название, Марка, Цена, Название фирмы. Запрос должен содержать условие на отображение товаров только Sony и Panasonic. Создание запроса выполняется аналогично предыдущему, но со следующими отличиями:

a.      Запрос строится на основе двух таблиц: ТОВАРЫ и ПОСТАВЩИКИ.

b.     Поле Название фирмы включите в запрос из таблицы ПОСТАВЩИКИ.

c.     В строке Условие отбора в поле Марка введите - Sony, а в строке или введите - Panasonic.

d.     Примените сортировку по возрастанию по двум полям: Название и Цена.

e.      Сохраните запрос под именем Товары и поставщики.

f.       Запустите созданный запрос и проанализируйте полученный результат.

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

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

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

Запрос с параметром (параметрический запрос)


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

Для того чтобы в процессе создания запроса определить параметр, вместо конкретного значения нужно ввести в строку Условие отбора имя или фразу, заключенную в квадратные скобки, например, [Введите название товара]. То, что находится внутри квадратных скобок, Access рассматривает как имя параметра. При выполнении запроса появляется специальное диалоговое окно с соответствующим именем параметра, а пользователь должен ввести требуемое значение параметра в поле диалогового окна (рис. 26). В рассматриваемом примере это будет название товара, например, ноутбук или сканер.



Рис. 26. Диалоговое окно, появляющееся при запуске параметрического запроса.

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

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

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

Упражнение 6. Создание параметрического запроса и работа с ним


1.     Откройте файл базы данных Цифровая техника.

2.     Создайте параметрический запрос на основе таблицы ТОВАРЫ. Создаваемый запрос должен включать в себя следующие поля: Название, Марка, Модель и Цена. При каждом выполнении запроса должен отображаться только один вид товара по вашему желанию.

3.     Создание запроса аналогично созданию запроса на выборку со следующими отличиями:

a.      После выбора необходимых полей из таблицы ТОВАРЫ в строке Условие отбора в поле Название введите выражение [Введите название товара] (квадратные скобки обязательны).

b.     Сохраните созданный запрос под именем Виды товаров.

4.     Запустите запрос Виды товаров. В появившемся диалоговом окне введите название товара - ноутбук и нажмите ОК. Проанализируйте полученный результат.

5.     Несколько раз запустите запрос, каждый раз вводя различные названия товаров.

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

a.      В окне базы данных выделите запрос Виды товаров и скопируйте его в буфер обмена.

b.     Вставьте созданную копию запроса в базу данных (с помощью команды Вставить).

c.     В открывшемся окне Вставка введите имя нового запроса Виды товаров и цены.

d.     Откройте вновь созданный запрос Виды товаров и цены в режиме Конструктора.

e.      Дополнительно к ранее заданным условиям отбора в строке Условие отбора в поле Цена введите выражение <[Ниже какой цены] (знак < перед квадратной скобкой обязателен и ставится без пробела).

7.     Несколько раз запустите запрос Виды товаров и цены. В первом диалоговом окне каждый раз вводите различные названия товаров, а во втором диалоговом окне соответственно в цифровом виде значение цены, например, 12000 и т. д.

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

a.       Откройте запрос Виды товаров и цены  в режиме Конструктора.

b.     Выделите столбец с полем Цена и мышью перетащите это поле, поместив его перед полем Название. Соответственно в строке Условие отбора введенные ранее выражения поменяются порядком следования.

c.     Закройте запрос с сохранением внесенных изменений.

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

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

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

Запрос с вычисляемыми полями


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

Выражение вводится в бланк запроса в пустое поле строки Поле. После нажатия клавиши <Enter> или перемещения курсора в другое поле строки, перед выражением в этом поле строки добавляется имя поля ВыражениеN. N – целое число, увеличивающееся на единицу для каждого нового создаваемого вычисляемого поля в запросе. Имя вычисляемого поля, стоящее перед выражением, отделяется от него двоеточием. Например:

Выражение1: [Цена]*[Количество]

где Цена и Количество – имена полей.

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

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

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

q       квадратные скобки ([...]), в них заключаются имена элементов управления;

q       знаки номеров (#), в них заключаются распознанные даты;

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

Упражнение 7. Создание запроса с вычисляемыми полями


1.     Откройте файл базы данных Цифровая техника.

2.     Создайте запрос для отображения цен с дилерской скидкой в 3% на каждый товар, с указанием названий и марок товаров, а также названий фирм и их адресов.

3.     Создание запроса аналогично созданию запроса на выборку со следующими отличиями:

a.      После выбора необходимых полей из таблиц ТОВАРЫ и ПОСТАВЩИКИ в поле Цена измените выражение так, чтобы получилось следующее выражение =[Цена]*0,97.

b.     Закройте бланк запроса. При закрытии запроса введите его имя Цены со скидкой.

4.     Откройте запрос. Проанализируйте результат. В заголовке столбца с ценой перед словом Цена появилось слово Выражение1. Нужно изменить заголовок столбца. Для этого перейдите в режим Конструктора.

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

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

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

Итоговые запросы


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

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


Таблица 6.

Функция

Описание

Sum

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

Avg

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

Min
Возвращает наименьшее значение, найденное в данном поле внутри каждой группы. Для числовых полей возвращает наименьшее значение. Для текстовых полей – наименьшее из символьных значений, независимо от регистра. Access игнорирует значения Null.

Max

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

Count

Возвращает количество записей, в которых значения данного поля отличны от Null.

First

Возвращает значение данного поля из первой записи, обнаруженной в группе.



Last

Возвращает значение данного поля из последней записи, обнаруженной в группе.

StDev

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



Var

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

Упражнение 8. Создание итогового запроса


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

2.      Создание запроса выполняется аналогично запросу на выборку, но со следующими особенностями:

a.      Запрос составляется на базе двух полей таблицы – ТОВАРЫ, а именно Название и Цена.

b.      Открыв бланк запроса, выполните команду Вид ► Групповые операции. В результате в бланке запроса появится строка Групповые операции.

c.     Установите курсор на пересечении строки Групповые операции и  столбца Название. Появится значок списка. Выберите из этого списка – Группировка. Аналогично для столбца Цена выберите из списка в этой строке - Avg (среднее значение).

d.     Сохраните запрос под названием Средние цены.

3.     Запустите запрос и проанализируйте результаты его выполнения.

4.     Аналогичным образом создайте еще два запроса Минимальные цены и Максимальные цены.

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

Запросы на изменение


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

Группа таких запросов носит общее называние «запросов на изменение». Возможны следующие виды запросов на изменение:

·        создание таблицы;

·        обновление;

·        добавление;

·        удаление.

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

Запрос на создание таблицы


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

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

Упражнение 9. Запросы на создание таблиц


1.     В базе данных Цифровая техника требуется регулярно создавать копии таблицы ТОВАРЫ. Для этой цели удобно использовать запрос на создание таблицы.

2.     Сначала создайте запрос на выборку на основе всех полей таблицы ТОВАРЫ[3] и присвойте ему имя Таблица ТОВАРЫ.

3.     Проверьте работу созданного запроса.

4.     Перейдите в режим Конструктора, а затем выполните команду ЗапросСоздание таблицы...

5.     В появившемся окне введите имя новой таблицы, например, ТОВАРЫ1. Создаваемая при выполнении запроса таблица может быть помещена либо в текущую базу данных, либо в другую базу данных. Установите переключатель в текущей базе данных и нажмите ОК.

6.     Обратите внимание на то, как изменился значок создаваемого запроса. Выполните запрос.

7.     В окне базы данных на панели Объекты выберите Таблицы и убедитесь в появлении новой таблицы ТОВАРЫ1. Если вы измените таблицу ТОВАРЫ, то запустив запрос Таблица ТОВАРЫ на создание таблицы, получите последнюю копию таблицы ТОВАРЫ (при этом нужно будет задать новое имя вновь создаваемой таблице, например, ТОВАРЫ2 и т.д.).

8.     Создайте и сохраните запрос на создание таблицы ФОТОАППАРАТЫ, отображающей данные о ценах на цифровые фотоаппараты, их марке, а также о названиях фирм, их поставляющих.

9.     Используйте для создания запроса Мастер запросов. Для этого:

a.      В окне базы данных выполните двойной щелчок на кнопке Создание запроса с помощью мастера.

b.     Запустится Мастер запросов. На первом шаге (рис. 27) в списке Таблицы и запросы выберите таблицу ТОВАРЫ, а затем из доступных полей выберите с помощью кнопки  следующие поля: Название, Марка, Цена. При этом очередное выбранное поле появляется справа (Выбранные поля:).

c.     Аналогичным образом выберите таблицу ПОСТАВЩИКИ, а из этой таблицы выберите поле Название фирмы. Перейдите к следующему шагу, нажав кнопку Далее>.

d.     На втором шаге мастера выберите вариант отчета – подробный и перейдите к следующему шагу.

e.      На третьем шаге мастера укажите имя создаваемого запроса – Фотоаппараты и нажмите кнопку Готово.



Рис. 27. Первый шаг работы мастера запросов.

10. Откройте созданный запрос в режиме Конструктора. Для поля Название в строке Условие отбора введите название товара – Цифровой фотоаппарат. Закройте запрос с сохранением внесенных изменений.

11.  Проверьте работу запроса, запустив его.

12. Преобразуйте созданный запрос на выборку в запрос на создание таблицы ФОТОАППАРАТЫ, запустите его и убедитесь в появлении соответствующей таблицы. Для этого выполните действия, аналогичные пунктам 4 – 7.

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

Запрос на обновление


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

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

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

Упражнение 10. Создание запроса на обновление записей в таблице


1.     В базе данных Цифровая техника создайте запрос на обновление данных в таблице ТОВАРЫ1. Требуется создать такой запрос, при выполнении которого автоматически будут обновляться данные о цене всех товаров с учетом сезонных скидок в 5%.

2.     Для создания запроса используйте таблицу ТОВАРЫ1.

3.     В поле 1-го столбца выберите из таблицы ТОВАРЫ1 поле Название; 2-го столбца – Марка; 3-го столбца – Цена.

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

5.     В строке Обновление в 3-ем столбце (поле Цена) введите выражение =[Цена]*0,95

6.     Закройте бланк запроса, присвоив созданному запросу имя Сезонные скидки 5%.

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

8.     Откройте таблицу ТОВАРЫ1. Убедитесь, что цены на товары уменьшились на 5%..

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

Запрос на добавление записей


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

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

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

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

После преобразования запроса в запрос на добавление в его бланке появляется строка Добавление.

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

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

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

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

 Упражнение 11. Создание запроса на добавление записей в таблице


1.     В базе данных Цифровая техника создайте запрос на добавление в таблицу ФОТОАППАРАТЫ данных о цифровых видеокамерах. Сначала следует создать запрос на выборку данных о цифровых видеокамерах из таблицы ТОВАРЫ1. Создание запроса выполняется аналогично запросу на обновление (смотри Упражнение 11), но со следующими особенностями:

a.      В строке Условия отбора в столбце Название введите Цифровая видеокамера.

b.     Закройте созданный запрос. При закрытии запроса введите его имя – Видеокамеры.

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

d.     Перейдите в режим Конструктора. Выполните команду ЗапросДобавление. В открывшемся окне введите имя таблицы ФОТОАППАРАТЫ (или выберите это имя из списка) и нажмите ОК.

2.     Находясь в режиме Конструктора выполните запуск запроса с помощью кнопки Запуск на панели инструментов.

3.     Ответьте Да на подтверждение выполнения запроса и сохранения таблицы.

4.     В окне базы данных переключитесь на отображение таблиц.

5.     Откройте таблицу ФОТОАППАРАТЫ и убедитесь в том, что в этой таблице теперь присутствуют записи о цифровых видеокамерах.

6.     Используя команду Правка ► Переименовать, измените имя таблицы ФОТОАППАРАТЫ на ВИДЕОТОВАРЫ.

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

Запрос на удаление записей


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

Первоначально запрос на удаление создается как запрос на выборку. Затем в окне конструктора запросов он преобразуется в запрос на удаление с помощью команды Запрос ► Удаление.

После преобразования запроса в запрос на удаление в его бланке появляется строка Удаление.

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

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

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

Упражнение 12. Создание запроса на удаление записей в таблице


1.     В базе данных Цифровая техника создайте запрос на удаление записей о самом дорогом цифровом фотоаппарате из таблицы ВИДЕОТОВАРЫ. Предварительно определите, запишите или запомните данные о самом дорогом цифровом фотоаппарате.

2.     Создание запроса выполняется аналогично запросу на обновление (смотри Упражнение 11), но со следующими особенностями:

a.      Запрос создайте на основе таблицы ВИДЕОТОВАРЫ, используя все поля данной таблицы.

b.     В строке Условия отбора в столбце Название введите Цифровой фотоаппарат, а в столбце Цена введите >25000 (или другое число, меньшее хотя бы на 1 (единицу) цены самого дорогого цифрового фотоаппарата).

c.     Сохраните запрос под именем Дорогой фотоаппарат, а затем проверьте корректность его работы.

3.     Откройте этот запрос в режиме Конструктора и преобразуйте его в запрос на удаление, выполнив команду Запрос ► Удаление.

4.     Перейдите в режим Таблица и обратите внимание на изменение внешнего вида значка данного запроса.

5.     Запустите запрос и ответьте Да на подтверждение выполнения запроса и удаления данных из таблицы.

6.     Откройте таблицу ВИДЕОТОВАРЫ и убедитесь в том, что запись о цифровом фотоаппарате, цена которого больше 25000, удалена из этой таблицы.

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

Перекрестный запрос


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

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

Упражнение 13. Создание перекрестного запроса


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

a.      запрос составляется на базе двух таблиц - ТОВАРЫ и ПОСТАВЩИКИ.

b.     Открыв бланк запроса, выполните команду ЗапросПерекрестный. В результате в бланке запроса появится еще 2 строки Групповые операции и Перекрестная таблица (рис. 28).

c.     В строке Поле в 1-ом столбце выберите из таблицы ТОВАРЫ поле Название; во 2-ом столбце выберите из таблицы ПОСТАВЩИКИ поле Название фирмы,  в 3-ем столбце выберите поле Цена.

d.     Щелкните мышью в 1-ом столбце строки Перекрестная таблица и выберите из списка Заголовки строк; во 2-ом столбце этой же строки выберите Заголовки столбцов; в 3 –ем столбце – Значение.



Рис. 28. Окно перекрестного запроса в режиме конструктора.

e.      В строке Групповые операции выберите для первого столбца «Группировка»; для второго столбца «Группировка»; для третьего столбца - Min.

f.       Сохраните запрос под именем Перекрестный.

2.     Запустите запрос и проанализируйте результаты его выполнения.

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

Работа с формами


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

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

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

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

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

В Access формы можно создавать тремя способами:

q       полностью в автоматическом режиме (автоформы);

q       с помощью мастера (средство автоматизации);

q       в режиме конструктора форм.

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

Автоформы


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

Существует три вида автоформ: в столбец, ленточные и табличные (рис. 29).



Рис. 29. Диалоговое окно, позволяющее выбрать вид автоформы.



Рис. 30. Форма в один столбец

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

 Ленточная автоформа (рис. 31) отображает одновременно группу записей — ее удобно использовать для оформления вывода данных.



Рис. 31. Ленточная форма.

Табличная автоформа по внешнему виду ничем не отличается от таблицы, на которой она основана.

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

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

Упражнение 14. Создание автоформ. Работа с формами


1.     В базе данных Цифровая техника создайте форму в один столбец на основе таблицы ТОВАРЫ, используя инструмент Автоформы. Для этого:

a.      Выделите таблицу ТОВАРЫ, раскройте список кнопки Новый объект   и выберите вариант Автоформа.

b.     Access автоматически создаст форму в один столбец. При этом форма будет открыта на первой записи.

c.     Закройте форму и сохраните ее под именем ТОВАРЫ.

d.     В окне База данных на панели Объекты нажмите кнопку Формы и убедитесь в появлении значка созданной формы.

2.     Откройте полученную форму и выполните просмотр всех записей, имеющихся в таблице ТОВАРЫ. Для этого используйте кнопку  перемещения по записям на Панели кнопок перехода.

3.     Не закрывая созданной формы, откройте таблицу ТОВАРЫ. Разместите на экране окно таблицы ТОВАРЫ и окно формы ТОВАРЫ как показано на рис. 32. Убедитесь в соответствии записей в таблице записям, просматриваемым с помощью формы. Не закрывая таблицы ТОВАРЫ, переключитесь на форму ТОВАРЫ.



Рис. 32. Таблица ТОВАРЫ и форма ТОВАРЫ.

4.     Используя форму, создайте новую запись в таблице ТОВАРЫ. Для этого щелкните на кнопке Новая запись . После этого все поля формы будут пустыми.

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

b.     Данные для новой записи: Код поставщика – 102, Название – Цифровая видеокамера, МаркаCanon, МодельMV-350, Цена – 16800.

c.     Для завершения ввода текущей записи выполните щелчок на кнопке Новая запись .

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

Скругленный прямоугольник: Замечание

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

6.     Закройте таблицу ТОВАРЫ, а затем снова откройте ее и убедитесь в том, что новая запись, которую вы внесли через форму, отображается в таблице.

7.     Сравните, каким способом удобнее создавать новые записи, путем непосредственного ввода в таблицу или с помощью формы.

8.     Используя инструмент Автоформы создайте ленточную форму на основе таблицы ПОСТАВЩИКИ. Для этого:

a.      В окне База данных на панели Объекты нажмите кнопку Формы.

b.     Нажмите кнопку Создать. Откроется диалоговое окно Новая форма.

c.     Выберите вариант Автоформа: ленточная, а в качестве источника данных выберите таблицу ПОСТАВЩИКИ. Нажмите кнопку ОК.

d.     Access автоматически создаст ленточную форму. Сохраните ее под именем ПОСТАВЩИКИ.

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

Создание форм с помощью мастера


Автоматизированные средства предоставляет Мастер форм — специальное программное средство, создающее структуру форм в режиме диалога с разработчиком. Результатом диалога пользователя и Мастера форм является «готовая к работе» форма. Мастер форм можно запустить из окна Базы данных щелчком на значке Создание формы с помощью мастера на панели Формы.

1. На первом этапе работы Мастера форм выбирают таблицы и поля, которые войдут; в будущую форму.

2. На втором этапе выбирается внешний вид формы.

3. На третьем этапе выбирается стиль оформления формы.

4. На последнем этапе выполняется сохранение формы под заданным именем. Здесь же можно включить переключатель Изменить макет формы, который открывает только что созданную форму в режиме Конструктора.

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

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

Многотабличные формы


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

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

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

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

Порядок создания многотабличной формы поясняется ниже.

Упражнение 15. Создание многотабличной формы с помощью мастера


В базе данных Цифровая техника требуется поочередно создать две формы. При этом каждая из них должна быть создана на основе двух таблиц: ПОСТАВЩИКИ и ТОВАРЫ. Первая многотабличная форма должна состоять из основной части и подчиненной формы. При этом основная часть должна отображать сведения о поставщиках, а подчиненная форма – сведения о товарах. Вторая многотабличная форма должна представлять собой основную часть, а вместо подчиненной формы должна содержать только кнопку, с помощью которой может быть вызвана связанная форма.

1.     Откройте файл базы данных Цифровая техника ина панели Объекты нажмите кнопку Формы.

2.     Запустите Мастер форм для чего нажмите кнопку Создание формы с помощью мастера.

3.     На первом шаге работы Мастера форм в качестве источника данных сначала выберите таблицу ПОСТАВЩИКИ и укажите, что все поля данной таблицы будут включены в создаваемую форму. Затем аналогичным образом выберите таблицу ТОВАРЫ и укажите, что в создаваемую форму будут включены все поля данной таблицы, кроме полей Код поставщика и Техн характ. Нажмите кнопку Далее>.

4.     На втором шаге работы Мастера форм выберите вариант Подчиненные формы, включив соответствующий переключатель. Нажмите кнопку Далее>.

5.     На третьем шаге выберите вариант внешнего вида подчиненной формы - Табличный.

6.     На четвертом шаге выберите стиль оформления формы по своему усмотрению.

7.     На пятом шаге укажите имя формы – Многотабличная ПОСТАВЩИКИ. Имя подчиненной формы не изменяйте (согласитесь с предложенным вариантом). Нажмите кнопку Готово.

8.     На экране появится многотабличная форма (рис. 33).

9.     Обратите внимание на внешний вид формы. Внутри основной части, содержащей данные о поставщиках, имеется подчиненная форма ТОВАРЫ, содержащая данные о товарах, которые поставляет поставщик, запись о котором отображается в основной части.



Рис. 33. Многотабличная форма ПОСТАВЩИКИ.

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

11. Закройте форму. Обратите внимание, что в окне базы данных появилось два новых значка: Многотабличная ПОСТАВЩИКИ и ТОВАРЫ подчиненная форма. Убедитесь, что каждую из этих форм можно открывать и работать с ней.

12. Создайте многотабличную форму с одной связанной формой. Для этого выполните действия, указанные в пунктах 2 – 7 со следующими отличиями:

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

b.     На пятом шаге укажите имя Формы1 – Основная ПОСТАВЩИКИ, Формы2 – Связанная ТОВАРЫ.

c.     Изучите появившуюся в результате работы мастера форму (рис. 34).

13. В полученной форме нажмите кнопку Связанная ТОВАРЫ.



Рис. 34. Многотабличная форма. Отображена основная форма – ПОСТАВЩИКИ. Связанная форма ТОВАРЫ представлена соответствующей кнопкой.

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

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

16. Уберите с экрана связанную форму, закрыв ее стандартным способом.

17. Закройте основную форму. Обратите внимание, что в окне базы данных появилось два новых значка: Основная ПОСТАВЩИКИ и Связанная ТОВАРЫ. Убедитесь, что каждую из этих форм можно открывать и работать с ней.

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

Конструирование формы


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

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

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

Следует обратить внимание, что в режиме конструктора отображается структура формы.

Структура формы


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

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

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

Объекты и элементы форм


Элементы управления, которыми можно пользоваться при конструировании формы, представлены на Панели элементов (рис. 35). Ее открывают щелчком на соответствующей кнопке панели инструментов или командой Вид ► Панель элементов

Существует три основных типа элементов управления: присоединенные, свободные, вычисляемые.

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

Рис. 35

. Панель элементов

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

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

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

Мастер элементов позволяет включать и отключать мастера по созданию элементов управления.

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

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

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

Выключатель позволяет создать кнопку, связанную с логическим полем. Элемент может находиться в двух состояниях: ИСТИНА — кнопка нажата, ЛОЖЬ — кнопка отжата.

Переключатель предназначен для создания кнопки (называемой радиокнопкой). Ее функции аналогичны функциям выключателя. Элемент находится в двух состояниях: ИСТИНА — кружок с точкой, ЛОЖЬ — пустой кружок. С кнопкой можно связать команды, например, выполняющие фильтрацию.

Флажок предназначен для создания флажка, связанного с логическим полем. Действует аналогично переключателям, но в отличие от них, допускает множественный выбор. Элемент может находится в двух состояниях: ИСТИНА — квадрат с галочкой, ЛОЖЬ — пустой квадрат.

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

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

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

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

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

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

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

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

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

Линия позволяет создать прямую линию, которую можно перемещать и размеры которой можно изменять. Цвет и толщину линии можно изменить с помощью кнопок панели инструментов Панель форматирования или окна свойств. Используется для разделения элементов формы или отчета.

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

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

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

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

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

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

Дизайн формы


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

Поэтому все элементы управления форм должны быть аккуратно выровнены. Это обеспечивается командой Формат ► Выровнять. Если нужно равномерно распределить элементы управления по полю формы, используют средства меню Формат ► Интервал по горизонтали или Формат ► Интервал по вертикали.

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

При разработке дизайна формы удобно использовать вспомогательную сетку. Ее отображение включают командой Вид ► Сетка. Автоматическую привязку элементов к узлам сетки включают командой ФорматПривязать к сетке.

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

Физически последовательность перехода — это порядок перехода к следующему полю по окончании работы с предыдущим. Она легко проверяется с помощью клавиши <Та
b
>. Если при последовательных нажатиях этой клавиши фокус ввода «мечется» по всей форме, значит, последовательность перехода нерациональна и ее надо править.

Для управления последовательностью перехода служит диалоговое окно Последовательность перехода (рис. 36). В нем представлен список элементов управления формы. Порядок элементов в списке соответствует текущему порядку перехода. Изменение порядка перехода выполняется перетаскиванием в два приема:

• щелчком на кнопке маркера слева от названия выделяется элемент управления (кнопка мыши отпускается);

после повторного щелчка с перетаскиванием элемент перемещается на новое

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



Рис. 36. Диалоговое окно Последовательность перехода для формы, представленной на рисунке 30.

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

Упражнение 16. Доработка формы в режиме Конструктора


Требуется доработать созданную в предыдущем упражнениисоставную форму Многотабличная ПОСТАВЩИКИ таким образом, чтобы обеспечить максимальное удобство при работе с ней. Доработку формы выполните в режиме Конструктора.

1.     Откройте файл базы данных Цифровая техника.

2.     Откройте форму Многотабличная ПОСТАВЩИКИ в режиме Конструктора. При этом автоматически появляется панель инструментов Конструктор форм и Панель элементов (рис. 37).

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



Рис. 37. Форма Многотабличная ПОСТАВЩИКИ в режиме Конструктора.

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

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

6.     С помощью маркеров выделения увеличьте размеры окна, занимаемого полем.

7.     Измените параметры поля Название фирмы. Для этого выделите поле и щелкните на нем правой кнопкой мыши. В открывшемся контекстном меню выберите пункт Свойства. Откроется диалоговое окно Поле: Название фирмы (рис. 38). Выберите в нем вкладку Макет (или вкладку Все).



Рис. 38. Диалоговое окно для задания свойств поля Название фирмы.

8.     Установите следующие параметры поля Название фирмы: шрифт – Arial, размер шрифта – 14, цвет текста выберите с помощью построителя выражений (кнопка , которая появляется справа при установке курсора в строку Цвет текста см. рис. 38). Закройте диалоговое окно Поле: Название фирмы.

9.     Аналогичным образом измените размеры и параметры связанной с полем надписи - Название фирмы.

10. Переключитесь в режим формы, выполнив команду Вид ► Режим формы. Обратите внимание на изменения во внешнем виде формы. Снова вернитесь в режим Конструктора.

11. Создайте кнопку закрытия формы. Для этого:

a.      На Панели элементов включите  Мастера с помощью кнопки , а затем щелкните мышью на значке  Кнопка на Панели элементов. Указатель мыши изменит вид. Это значит, что можно с помощью мыши создать соответствующий элемент управления.

b.     В левой части заголовка формы создайте элемент управления – Кнопка, протягивая указатель мыши.

c.     При этом автоматически запустится мастер создания кнопок (рис. 39). В первом окне Создание кнопок необходимо выбрать действие, которое будет выполняться при нажатии кнопки. Сначала выберите категорию действий - Работа с формой. После чего в окне со списком Действия выберите вариант Закрыть форму. Затем нажмите кнопку Далее>.



Рис. 39. Первый шаг работы Мастера кнопок.

d.     В следующем окне мастера создания кнопоквыберите, что будет размещено на кнопке (текст или рисунок). Установите переключатель в положение Рисунок, а затем выберите вариант – Стоп. В левой части окна Создание кнопок образец покажет, как будет выглядеть создаваемая кнопка (рис. 40). Нажмите кнопку Далее>.

e.      В последующем окне сразу нажмите кнопку Готово, не меняя предложенный вариант номера кнопки.

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



Рис. 40. Второй шаг работы Мастера кнопок.

12.  Создайте две кнопки перемещения по записям основной формы. Для этого:

a.      аналогичным образом создайте элемент управления – Кнопка в правой верхней части заголовка формы.

b.     На первом шаге мастера создания кнопок выберите категорию действий – Переходы по записям. В окне со списком Действия выберите вариант Предыдущая запись (рис. 41).

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



Рис. 41. Создание кнопки перехода по записям.



Рис. 42. Выбор рисунка, помещаемого на кнопке перехода к предыдущей записи.

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

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

14. Закройте форму с помощью кнопки STOP.

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

16. Переключитесь в режим формы. Обратите внимание на внешний вид формы. Закройте форму.

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



Рис. 43. Группировка данных о поставщике с помощью элемента управления Прямоугольник

Вычисления в форме


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



Рис. 44. Элемент управления Свободный (новое поле в форме).


Для ввода выражения нужно вызвать окно свойств созданного элемента управления (рис. 45) щелчком правой кнопки мыши. На вкладке Данные следует установить курсор в поле Данные. Нужное выражение можно ввести с клавиатуры или воспользоваться построителем выражений, используя кнопку Построить, находящуюся справа за полем Данные (рис. 45). Нажатие этой кнопки приводит к открытию окна построителя выражений (рис. 46). Следует заметить, что выражение всегда должно начинаться со знака равно (=).

Рис. 45. Окно свойств созданного элемента управления Свободный (Поле 16).

Диалоговое окно построителя выражений состоит из трех разделов.

q       В верхней части окна построителя расположено поле выражения.

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



Рис. 46. Диалоговое окно построителя выражений.

q       В нижней части окна построителя находятся три поля.

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

·     В среднем поле задаются определенные элементы или типы элементов для папки, заданной в левом поле. Например, если выбрать в левом поле Forms
(Формы),
то в среднем поле появится список всех полей выбранной формы.

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

Ограничения доступа к данным через форму


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



Рис. 47. Установка блокировки в свойствах поля.

Для того, чтобы при работе через форму все записи были доступны только для чтения, следует в свойствах всей формы на вкладке Данные в раскрывающихся списках Разрешить добавление, Разрешить удаление и Разрешить изменение выбрать значение Нет (рис. 48). Указанные свойства могут устанавливаться независимо друг от друга. Например, при запрете на изменение записей могут быть разрешены добавление и удаление записей.

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



Рис. 48. Установка ограничений на корректировку всех записей формы.

Упражнение 17. Создание форм с вычисляемым полем


1.     В базе данных Цифровая техника дополните таблицу ТОВАРЫ1 полем Количество. Для этого:

a.      Откройте таблицу ТОВАРЫ1 в режиме конструктора.

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

c.     Сохраните произведенные изменения структуры таблицы ТОВАРЫ1.

2.     Создайте автоформу в столбец на основе таблицы ТОВАРЫ1 и сохраните ее под именем Товары1.

3.     Используя созданную форму Товары1, введите для каждого товара в поле Количество произвольное значение в виде двухзначного числа.

4.     Откройте форму Товары1 в режиме конструктора и справа от имеющихся полей создайте новое поле используя кнопку Поле панели элементов.

5.     Вызовите с помощью контекстного меню диалоговое окно свойств вновь созданного поля.

6.     На вкладке Данные (или на вкладке Все) с помощью построителя выражений в поле Данные сформируйте выражение =[Цена]*[Количество] (рис. 45 и рис. 46).

7.     Увеличьте размер надписи вновь созданного поля и введите в нее текст Всего данных товаров на сумму,

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

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

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

Работа с отчетами


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

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

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

Отчет, как и форма, может быть создан одним из трех способов:

q       полностью в автоматическом режиме (автоотчеты);

q       с помощью мастера (средство автоматизации);

q       в режиме конструктора отчетов.

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

Мастер отчетов работает в семь этапов. При его работе выполняется:

q       выбор базовых таблиц или запросов, на которых базируется отчет;

q       выбор полей, отображаемых в отчете;

q       выбор полей группировки;

q       выбор полей и методов сортировки данных;

q       выбор формы печатного макета;

q       выбор стиля оформления;

q       задание имени отчета.

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

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

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

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

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

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

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

Заголовок отчета — печатается только в начале отчета, используется на титульной странице.

Верхний колонтитул — печатается вверху каждой страницы.

Заголовок группы — печатается перед обработкой первой записи группы.

Область данных — печатается каждая запись таблицы или динамического набора данных запроса,

Примечание группы — печатается после обработки последней записи группы.

Нижний колонтитул — печатается внизу каждой страницы.

Примечание отчета — печатается в конце отчета после обработки всех записей.

Созданный отчет может быть открыт в следующих режимах:

q       в режиме конструктора;

q       в режиме предварительного просмотра.

Режимы работы с отчетом

Отчет в режиме конструктора.


Если необходимо внести изменения в структуру отчета, его необходимо открыть в режиме конструктора. Режим конструктора отчетов во многом похож на режим конструктора форм. На рис. 49 представлен отчет, созданный на основе таблицы ТОВАРЫ в режиме конструктора.



Рис. 49. Отчет ТОВАРЫ в режиме конструктора.

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

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

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

Отчет в режиме предварительного просмотра.


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

На рис. 50 представлен отчет ТОВАРЫ в режиме предварительного просмотра.



Рис. 50. Фрагмент отчета ТОВАРЫ в режиме предварительного просмотра.

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

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

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

Сортировка и группировка в отчете


Для создания групп в отчете используется диалоговое окно Сортировка и группировка (рис. 51), в котором делаются соответствующие установки: определяется порядок сортировки, задается установка вывода заголовка группы и примечания группы, задается порядок группировки и интервал.

Диалоговое окно Сортировка и группировка можно открыть либо с помощью команды Вид ► Сортировка и группировка, либо щелчком маши на пиктограмме  стандартной панели инструментов.

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



Рис. 51. Диалоговое окно Сортировка и группировка

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

Упражнение 18. Создание отчетов


1.     В базе данных Цифровая техника создайте автоотчет на основе таблицы ТОВАРЫ. Для этого:

a.      Выделите таблицу ТОВАРЫ, раскройте список кнопки Новый объект  и затем выберите вариант Автоотчет.

b.     Access автоматически создаст автоотчет.

c.     Изучите структуру и содержание полученного автоотчета;

d.     Закройте автоотчет и сохраните его под именем ТОВАРЫ.

2.      Создайте многотабличный отчет с помощью мастера.

3.     На первом шаге работы мастера выберите таблицы, а в каждой таблице выберите поля, которые будут включены в отчет. В таблице ПОСТАВЩИКИ выберите только поле Название фирмы, а в таблице ТОВАРЫ выберите поля: Название, Марка, Модель и Цена (рис. 52).



Рис. 52. Первый шаг работы мастера отчетов.

4.     На втором шаге работы мастера выберите вид представления данных, как показано на рис. 53.



Рис. 53. Второй шаг работы мастера отчетов.

5.     На третьем шаге работы мастера выберите уровни группировки данных (рис. 54). Для добавления уровня группировки выделите соответствующее поле в окне Добавить уровни группировки и выполните двойной щелчок на его имени илии нажмите кнопку  . Для удаления добавленного уровня группировки выберите его и нажмите кнопку  При необходимости уровни группировки можно изменить с помощью кнопок Уровень повысить  или Уровень понизить .



Рис. 54. Третий шаг работы мастера отчетов.

6.     На четвертом шаге работы мастера выберите порядок сортировки и вычисления, выполняемые для записей (рис. 55).

7.     Для выбора способа вычислений нажмите кнопку Итоги… и в открывшемся окне установите флажки, и переключатели как показано на рис. 56.



Рис. 55. Четвертый шаг работы мастера отчетов.



Рис. 56. Выбор способа итоговых вычислений.

8.     На пятом шаге работы мастера выберите вид макета для отчета как показано на рис. 57.



Рис. 57. Пятый шаг работы мастера отчетов.

9.     На шестом шаге работы мастера (рис.58) выберите стиль оформления отчета (просмотрите все предложенные варианты и выберите стиль по своему усмотрению).



Рис. 58. Шестой шаг работы мастера отчетов.

10. На седьмом шаге работы мастера (рис.59) задайте имя отчета, а затем нажмите кнопку Готово.



Рис. 59. Седьмой шаг работы мастера отчетов.

11. Изучите структуру и содержание полученного отчета.

12. Переключитесь в режим конструктора и доработайте полученный отчет:

a.      Отформатируйте поля: Название фирмы, Название (товара), Марка, Модель и Цена, а также связанные с этими полями надписи установив размер шрифта соответственно: 18пт, 16пт, 14пт, 10пт. Цвет шрифта и его начертание установите по своему усмотрению.

b.     Для раздела Название (товара) в области примечания дополнительно к полю Min Цена создайте поле для вывода средней цены по каждому виду товара. При необходимости обратитесь к справочной системе Access (с вопросом - Создание вычисляемого элемента управления в форме или отчете).

13. Просмотрите отчет в режиме предварительного просмотра.

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

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

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

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

Использование вычисляемых значений


MS Access предоставляет десятки встроенных функций, которые можно использовать для обработки данных или для добавления информации в отчет. Одним из видов информации, которая наиболее часто включается в отчет, является информация о дате подготовки отчета или номера текущих страниц. Для дат MS Access предоставляет две встроенные функции Date() и Now() возвращающие текущие системные даты. Чтобы добавить текущую дату в отчет, необходимо создать несвязанное поле и установить его свойство Данные в значение =Date() (или Now()).

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

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

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

Предварительный просмотр и печать отчета


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

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

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

Упражнение 19. Создание отчета на основе запроса


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

1.     Предварительно создайте запрос на выборку товаров с названием Ноутбук и содержащий следующие поля: Название фирмы, Название (товара), Марка, Модель, Цена.

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

3.     В окне базы данных переключитесь на объекты Отчеты и нажмите кнопку Создать.

4.     В окне Новый отчет (рис. 60) выберите в качестве способа создания отчета Мастер отчетов, а в качестве источника данных – ранее созданный запрос Ноутбуки.




Рис. 60. Окно выбора способа создания отчета и источника данных.

5.     На следующем шаге работы мастера отчетов включите в создаваемый отчет все поля запроса Ноутбуки.

6.     Выберите вид представления данных как показано на рис. 61.

7.     Установите группировку данных как показано на рис. 62.

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



Рис. 61. Окно выбора вида представления данных в создаваемом отчете.



Рис. 62. Окно для задания способа группировки данных.

9.     Присвойте создаваемому отчету имя Ноутбуки. Вариант оформления выберите по своему усмотрению. В качестве вида макета отчета выберите вариант Структура 1 и нажмите кнопку Готово.



Рис. 63. Задание способа сортировки данных.

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



Рис. 64. Установка параметров страницы отчета.

11. Проанализируйте содержание и внешний вид отчета (рис. 65).

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

13. Отформатируйте поля отчета так, чтобы он хорошо выглядел в печатном виде.



Рис. 65. Отчет Ноутбуки в режиме предварительного просмотра.

14. Откройте отчет Ноутбуки в режиме конструктора и внесите в него следующие изменения:

a.      Отформатируйте поля отчета так, чтобы он хорошо выглядел в печатном виде.

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

c.     В свойстве Данные этого поля нужно ввести =1, затем в свойстве Сумма с накоплением устанавливается значение для всего, т.к. требуется обеспечить сплошную нумерацию строк отчета (рис. 66).

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

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



Рис. 66. Установка свойств поля Свободное для обеспечения нумерации строк в отчете

Построение диаграмм.


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

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

Скругленный прямоугольник: Замечание

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

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



Рис. 67. Окно выбора мастера диаграмм

На первом шаге мастера диаграмм (рис. 68) необходимо выбрать поля с данными, значения которых необходимо отобразить в диаграмме (в данном примере - это Фамилия и Оклад).



Рис. 68. Выбор полей с данными, которые необходимо отобразить в диаграмме

На втором шаге мастера диаграмм (рис. 69) выбирается тип диаграммы. На третьем шаге мастера диаграмм (рис. 70) определяется способ расположения рядов данных в создаваемой  диаграмме. На четвертом шаге мастера диаграмм (рис. 71) задается название диаграммы. После щелчка мышью по кнопке Готово формируется отчет с диаграммой (рис. 72).



Рис. 69. Выбор типа диаграммы



Рис. 70. Выбор расположения рядов данных в создаваемой  диаграмме



Рис. 71. Окно мастера диаграмм для задания названия диаграммы

Обмен данными


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



Рис. 72. Отчет с диаграммой.

Экспорт данных


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

Общий порядок выполнения действий по экспорту объектов в существующую базу данных MS Access следующий.

1.     В окне базы данных нужно выделить объект, который нужно экспортировать, а затем выполнить команду ФайлЭкспорт.

2.     В диалоговом окне Экспорт объекта выбрать диск и папку, где расположена база данных MS Access, в которую нужно экспортировать объект.

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

4.     В диалоговом окне Экспорт ввести имя нового объекта (или использовать текущее имя). При экспорте таблицы выбрать в группе параметров Экспорт таблиц переключатель, соответствующий требуемому виду экспорта — структура и данные или только структура. Нажать кнопку OK.

Общий порядок выполнения действий по экспорту объектов в файл электронной таблицы следующий.

1.     В окне базы данных нужно выделить объект, который нужно экспортировать, а затем выполнить команду ФайлЭкспорт.

2.     В диалоговом окне Экспорт объекта в поле со списком Тип файла нужно выбрать требуемый формат электронной таблицы.

3.     На следующем шаге следует выбрать диск и папку, в которую будет экспортирован объект.

4.     Затем нужно указать, в каком из существующих файлов будет сохранен экспортируемый объект. Это можно сделать путем выбора файла из списка файлов, сохраненных ранее в выбранной папке или задать имя нового файла. Если на шаге 2 был выбран тип Microsoft Excel 5-7 или Microsoft Excel 97-2000 (*.xls), то для того, чтобы сохранить используемые шрифты, данные в полях подстановок и размеры полей, следует установить флажок Сохранить формат.

5.     После установки всех параметров нужно нажать кнопку Сохранить.

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

Импорт и связывание данных


Access поддерживает два способа использования данных из внешних источников:

q       Импорт данных в новую таблицу Access. При этом данные преобразуются из другого формата и копируются в Access. Также можно импортировать объекты в текущую базу данных Access.

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

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


Импорт данных


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

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

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

Связывание данных


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

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

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

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

2.     В окне диалога Импорт (Связь) в поле со списком Тип файлов выберите тип импортируемых данных MS Access и укажите папку с БД Access, из которой будет осуществлен импорт (связывание) таблицы.

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

4.     В диалоговом окне Импорт объектов (Связь с таблицами) выберите вкладку с импортируемыми объектами (при импорте таблиц это будет вкладка Таблицы) выделите необходимые объекты. Нажмите кнопку Параметры и установите необходимые параметры импорта. При установлении связи с таблицами диалоговое окно Связь с таблицами имеет только одну вкладку и не имеет кнопки Параметры, поэтому необходимо выделить только связываемы таблицы.

5.      Нажмите кнопку OK, чтобы импортировать выделенные объекты.

Упражнение 20. Экспорт и импорт данных


1.          Создайте в своей папке новую базу данных Торговля.

2.          Выполните экспорт таблиц из учебной базы данных Борей в базу данных Торговля. Для этого:

c.     Откройте учебную базу данных Борей. Выделите таблицу Доставка и выполните команду ФайлЭкспорт.

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

e.       Во вновь открывшемся диалоговом окне Экспорт (рис. 73)выберите в группе параметров Экспорт таблиц переключатель структура и данные. Имя таблицы оставьте прежним (Доставка). Нажмите кнопку OK, чтобы экспортировать таблицу.



Рис. 73. Диалоговое окно Экспорт.

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

3.          В базе данных Торговля создайте схему данных аналогичную схеме данныхбазы данных Борей. Для этого разместите на экране одновременно схему данных базы Борей и схему данных базы Торговля.

4.          Создайте в своей папке новую базу данных Торговля1.

5.          Выполните импорт таблиц из базы данных Торговля в базу данных Торговля1. Для этого:

a.      Откройте базу данных Торговля1 и закройте базу данных Торговля.

b.     Выполните команду ФайлВнешние данные ► Импорт.

c.     В открывшемся диалоговом окне Импорт выберите свою папку, а в ней базу данных Торговля.

d.     Во вновь открывшемся диалоговом окне Импорт объектов (рис. 74) выберите вкладку Таблицы, выделите все таблицы с помощью кнопки Выделить все, нажмите кнопку Параметры и установите параметры импорта как показано на рис.74. Нажмите кнопку OK, чтобы импортировать выделенные объекты.

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



Рис. 74. Диалоговое окно Импорт объектов

6.          Выполните экспорт данных таблицы ТОВАРЫ из базы данных Цифровая техника в файл MS Excel. Для этого:

a.      Откройте базу данных Цифровая техника и выделите таблицу ТОВАРЫ.

b.     Выполните команду ФайлЭкспорт.

c.     В диалоговом окне Экспорт объекта выберите свою папку, в поле Имя файла введите имя создаваемого файла MS Excel, например, Экспорт данных (можно выбрать для сохранения экспортируемых данных любой из ранее созданных файлов MS Excel). В поле Тип файла выберите вариант M
icrosoft

Excel
97-2000.
Установите флажок Сохранить формат и нажмите кнопку Сохранить.

d.     Откройте файл Экспорт данных и убедитесь в том, что экспорт данных из таблицы ТОВАРЫ выполнен успешно, при этом было сохранено форматирование этих данных.

7.          Выполните экспорт данных таблицы ТОВАРЫ из базы данных Цифровая техника в файл MS Word. Для этого:

a.      В базе данных Цифровая техника выделите таблицу ТОВАРЫ.

b.     Выполните команду ФайлЭкспорт.

c.     В диалоговом окне Экспорт объекта выберите свою папку, в поле Имя файла введите имя создаваемого файла MS Word, например, Экспорт данных (можно выбрать для сохранения экспортируемых данных любой из ранее созданных файлов MS Word). В поле Тип файла выберите вариант M
icrosoft

Excel
97-2000.
Установите флажок Сохранить формат и нажмите кнопку Сохранить.

d.     Откройте файл Экспорт данных и убедитесь в том, что экспорт данных из таблицы ТОВАРЫ выполнен успешно, при этом было сохранено форматирование этих данных.

8.          Закройте все файлы с сохранением произведенных изменений.



Литература


1.     Microsoft Office Access 2003. Шаг за шагом. Официальный учебный курс +CD ROM: ЭКОМ.: 2007: 432 стр.

2.     Бекаревич Ю. Microsoft Access за 21 занятие: BHV-Санкт-Петербург.: 2005. 544 стр.

3.     Вейскас Дж. Эффективная работа с Microsoft Access 2000. - СПб.: Питер. 2002.

4.     Дейт К.Дж. Введение в системы баз данных. –М.: Вильямс, 1999.

5.     Информатика для экономистов Учебник / Под общей ред. Матюшка В.М. – ИНФРА-М.: 2006.—880 с.

6.     Информатика для юристов и экономистов / Под ред. Симоновича С.В.-- СПб.: Питер, 2001.-- 688 с.

7.     Информатика: Учебник / Под ред. Н.В. Макаровой.-- М.: Финансы и статистика, 2000.-- 768 с.

8.     Кошелев В.Е. Access 2003. Практическое руководство Бином  2005.-- 464 стр.

9.     Новиков Ф., Яценко А. Microsoft Office XP. –СПб.: Питер, 2002.

10. Практикум по экономической информатике: Учебное пособие. В трех частях. Часть 1. Под ред. Шуремова Е.Л., Тимаковой Н.А., Мамонтовой Е.А. М.: Финансы и статистика;  Перспектива., 2002.

11. Пушкина Н., Бекаревич Ю. Microsoft Access 2003 BHV-Санкт-Петербург 2004.: 752 стр.

12. Сеннов А. С. Access 2003. Практическая разработка баз данных (+СD). Учебный курс: Питер 2005: 256 стр.

13. Стоцкий Ю. Самоучитель Office XP. –СПб.: Питер, 2002.

14. Харитонова И., Михеева В. Microsoft Access 2003.(+ CD) СПб.: Питер, 2004 г.

15. Шафрин Ю.А. Информационные технологии. В 2-х частях. Часть 2. Офисная технология и информационные системы. М. БИНОМ.  Лаборатория знаний. 2002.

16. Экономическая информатика: Учебник / Под ред. В.П. Косарева, Л.В. Еремина.-- М.: Финансы и статистика, 2001.



[1] Данное свойство устанавливается автоматический при определении поля как ключевого при условии, что других ключевых полей в таблице нет.

[2] Таковы правила синтаксиса Access

[3] Для создания резервной копии таблицы, содержащей все те же поля и в том же количестве, что и в оригинале, чтобы не перетаскивать все поля таблицы в строку. «Поле», достаточно поместить туда символ *, заменяющий все поля таблицы и находящийся в начале списка полей таблицы.

1. Сочинение Культура Киевской Руси 2
2. Курсовая на тему Правопреемство государств в отношении договоров
3. Реферат Трудовые ресурсы на предприятии ОАО ОМК ОРМЕТО-ЮУМЗ
4. Реферат на тему VALUES EDUCATION Essay Research Paper PREFACEThe moral
5. Реферат Гофкригсрат
6. Реферат Борьба с космополитизмом в СССР
7. Реферат Анализ доходов, рентабельности, прибыли производственного предприятия в условиях рыночных отноше
8. Реферат Основні концепції філософії історії
9. Реферат Дивидендная политика 3
10. Реферат на тему Tuesday