Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015

Опубликуйте свой материал в официальном Печатном сборнике методических разработок проекта «Инфоурок»

(с присвоением ISBN)

Выберите любой материал на Вашем учительском сайте или загрузите новый

Оформите заявку на публикацию в сборник(займет не более 3 минут)

+

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

Инфоурок / Информатика / Конспекты / Учебно-методическое пособие по информатике "Создание баз данных Access"
ВНИМАНИЮ ВСЕХ УЧИТЕЛЕЙ: согласно Федеральному закону № 313-ФЗ все педагоги должны пройти обучение навыкам оказания первой помощи.

Дистанционный курс "Оказание первой помощи детям и взрослым" от проекта "Инфоурок" даёт Вам возможность привести свои знания в соответствие с требованиями закона и получить удостоверение о повышении квалификации установленного образца (180 часов). Начало обучения новой группы: 24 мая.

Подать заявку на курс
  • Информатика

Учебно-методическое пособие по информатике "Создание баз данных Access"

библиотека
материалов


Государственное бюджетное 

общеобразовательное учреждение

средняя общеобразовательная школа №571 

с углубленным изучением английского языка

Невского района Санкт-Петербурга








Л.Р.Лушпа

Учебно-методическое пособие.


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









Санкт - Петербург

2014

Лушпа Л.Р. Создание базы данных. Учебно-методическое пособие - СПб: ГБОУ школа №571 с с углубленным изучением английского языка

Невского района– 92 с.




Ответственный за выпуск: Григорьев В.Е.



В учебно-методическом пособии изложены курс лекций и практических заданий по дисциплине «Создание базы данных».

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



Утверждено: Учебно – методическим советом Государственное бюджетное

общеобразовательное учреждение средняя общеобразовательная школа №571

с углубленным изучением английского языка Невского района Санкт-Петербурга

«______»________________2014, протокол № ______.





© Государственное бюджетное 

общеобразовательное учреждение

средняя общеобразовательная школа №571 

с углубленным изучением английского языка

Невского района Санкт-Петербурга

© Л.Р.Лушпа

ВВЕДЕНИЕ


Государственное бюджетное  1

общеобразовательное учреждение 1

средняя общеобразовательная школа №571  1

с углубленным изучением английского языка 1

Невского района Санкт-Петербурга 1

Лушпа Л.Р. Создание базы данных. Учебно-методическое пособие - СПб: ГБОУ школа №571 с с углубленным изучением английского языка 2

Невского района– 92 с. 2

ВВЕДЕНИЕ 3

ЛЕКЦИЯ 1. БАЗЫ ДАННЫХ. НАЧАЛЬНЫЕ СВЕДЕНИЯ. 5

1.1Сструктура базы данных 5

1.2. Простейшие базы данных 5

1.3. Свойства полей. Типы полей 5

1.4. Связанные таблицы 7

1.5. Поля уникальные и ключевые 8

ЛЕКЦИЯ 2. СУБД MICROSOFT ACCESS 9

2.1. Объекты microsoft access 10

2.2. Режимы работы с microsoft access 12

2.3. Таблицы. Создание таблиц 13

2.4. Особенности таблиц баз данных 14

ПРАКТИЧЕСКАЯ РАБОТА №1 15

СОЗДАНИЕ ТАБЛИЦ В СРЕДЕ MS ACCESS 15

ПРАКТИЧЕСАЯ РАБОТА №2 20

СОЗДАНИЕ БАЗЫ ДАННЫХ С ИСПОЛЬЗОВАНИЕМ МАСТЕРА ТАБЛИЦ, ИМПОРТА ТАБЛИЦ. СОЗДАНИЕ ПОЛЕЙ ПОДСТАНОВОК В ТАБЛИЦАХ.
СОЗДАНИЕ СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ 20

ЛЕКЦИЯ 3. ОТБОР И СОРТИРОВКА ЗАПИСЕЙ С ПОМОЩЬЮ
ЗАПРОСОВ 27

3.1. Запросы и фильтры 27

3.2. Редактирование и анализ данных с помощью запросов 28

ПРАКТИЧЕСКАЯ РАБОТА №3 30

СОЗДАНИЕ ЗАПРОСОВ В СРЕДЕ MS ACCESS 30

Лекция 4. Выражения в MS Access 43

4.1. Арифметические операторы 44

4.2. Операторы присваивания и сравнения 45

4.3. Логические операторы 45

4.4. Операторы слияния строковых значений (конкатенации) 46

4.5. Константы 48

4.6. Функции 49

4.7. Анализ данных с помощью запросов 51

ПРАКТИЧЕСКАЯ РАБОТА №4 52

СОЗДАНИЕ СЛОЖНЫХ ЗАПРОСОВ, СОЗДАНИЕ МОДИФИЦИРУЮЩИХ ЗАПРОСОВ В СРЕДЕ MS ACCESS 52

Лекция 5. ОСНОВНЫЕ СВЕДЕНИЯ О ФОРМАХ
НАЗНАЧЕНИЕ ФОРМЫ ПРИ РАБОТЕ С БАЗОЙ ДАННЫХ 67

ПРАКТИЧЕСКАЯ РАБОТА №5 69

СОЗДАНИЕ ФОРМ В СРЕДЕ MS ACCESS 69

Лекция 6. ОСНОВНЫЕ СВЕДЕНИЯ ОБ ОТЧЕТАХ.
НАЗНАЧЕНИЕ И СОЗДАНИЕ ОТЧЕТОВ 85

ПРАКТИЧЕСКАЯ РАБОТА №6
РАБОТА С ОТЧЕТАМИ В СРЕДЕ MS ACCESS 87


ЛЕКЦИЯ 1. БАЗЫ ДАННЫХ. НАЧАЛЬНЫЕ СВЕДЕНИЯ.

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

1.1Сструктура базы данных

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

1.2. Простейшие базы данных

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

1.3. Свойства полей. Типы полей

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

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

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

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

Разные типы полей имеют разное назначение и разные свойства.

1. Основное свойство текстового поля - размер.

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

3. Поля для ввода дат или времени имеют тип Дата/время. Для ввода логических данных, имеющих только два значения (Да или Нет; 0 или 1; Истина или Ложь и т. п.), служит специальный тип - Логическое поле. Нетрудно догадаться, что длина такого поля всегда равна 1 байту, поскольку этого более чем достаточно, чтобы выразить логическое значение.

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

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

6. У текстового поля есть недостаток, связанный с тем, что оно имеет ограниченный размер (не более 256 символов). Если нужно вставить в поле длинный текст, для этого служит поле типа MEMO. В нем можно хранить до 65 535 символов. Особенность поля MEMO состоит в том, что реально эти данные хранятся не в поле, а в другом месте, а в поле хранится только указатель на то, где расположен текст.

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

1.4. Связанные таблицы

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

Базы данных, имеющие связанные таблицы, называют также реляционными базами данных.

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

Разделение базы на связанные таблицы не только удобно, но иногда и необходимо.

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

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

1.5. Поля уникальные и ключевые

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

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

Уникальное поле - это поле, значения в котором не могут повторяться.

Если из таблицы «Заказы» известно, что его обработал сотрудник Иванов. Но в таблице «Сотрудники фирмы» может быть несколько разных Ивановых, и компьютер не разберется, кто же из них обработал данный заказ. Это означает, что поле «Фамилия» не является уникальным и потому его нельзя использовать для связи между таблицами.

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

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

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

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

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

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

hello_html_7e8f475c.png

Рис. 1.1. Окно схемы данных

ЛЕКЦИЯ 2. СУБД MICROSOFT ACCESS

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

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

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

Еще одним дополнительным достоинством MS Access является интегрированность этой программы с Excel , Word и другими программами пакета Office . Данные, созданные в разных приложениях, входящих в этот пакет, легко импортируются и экспортируются из одного приложения в другое.

2.1. Объекты microsoft access

Исходное окно MS Access отличается простотой и лаконичностью. Шесть вкладок этого окна представляют шесть видов объектов, с которыми работает программа.

hello_html_m50fd8a4.png

Рис.2.1. Главное окно базы данных

Таблицы - основные объекты базы данных. С ними мы уже знакомы. В них хранятся данные. Реляционная база данных может иметь много взаимосвязанных таблиц.

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

Формы - это объекты, с помощью которых в базу вводят новые данные или просматривают имеющиеся.  Отчеты - это формы "наоборот". С их помощью данные выдают на принтер в удобном и наглядном виде.

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

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

2.2. Режимы работы с microsoft access

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

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

1. Взгляните на стартовое окно базы данных. Кроме шести вкладок для основных объектов оно содержит три командные кнопки:

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

2. Кнопка Открыть открывает избранный объект. Если это таблица, то ее можно просмотреть, внести новые записи или изменить те, что были внесены ранее.

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

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

2.3. Таблицы. Создание таблиц

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

Создание таблицы состоит в задании ее полей и назначении их свойств. Оно начинается с щелчка на кнопке Создать в окне База данных.

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

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

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

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

4. Пункт Режим таблицы открывает заготовку, в которой все поля имеют формальные имена: Поле1, Поле2... и т. д. и один стандартный текстовый тип. Такую таблицу можно сразу наполнять информацией.

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

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

2.4. Особенности таблиц баз данных

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

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

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

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

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

ПРАКТИЧЕСКАЯ РАБОТА №1

СОЗДАНИЕ ТАБЛИЦ В СРЕДЕ MS ACCESS

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

ЧАСТЬ 1

СОЗДАНИЕ БАЗЫ ДАННЫХ. СОЗДАНИЕ ТАБЛИЦЫ В РЕЖИМЕ
КОНСТРУКТОРА. МОДИФИКАЦИИ В РЕЖИМЕ ТАБЛИЦЫ.
ФИЛЬТРАЦИЯ И СОРТИРОВКА


  1. Создайте новую базу данных «Турагенство».

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

hello_html_m5ce14940.png

Рис. 1.1. Окно конструктора таблиц

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

1 способ:

Для поля Страна измените тип данных на Мастер Подстановок;

выберите опцию «Будет введен фиксированный набор значений»;

введите повторяющиеся значения стран в 1 столбец

2 способ:

Для поля Страна откройте вкладку Подстановка;

измените Тип элемента управления «Поле» на «Поле со списком»;

выберите Тип источника строк «Список значений»;

в графе Источник строк введите повторяющиеся значения стран через точку с запятой

hello_html_4446390f.png

Рис. 1.2. Вкладка «Подстановка» для выделенного поля

  1. Аналогичным образом отредактируйте поле «Транспорт» (значение поля «самолет» можно ввести в графу «По умолчанию»)

  2. По кнопке Вид - hello_html_70e305b.jpgперейдите в режим таблицы, сохраните изменения и задайте имя таблице «Туры». Введите данные по образцу.

hello_html_m71414328.png

Рис. 1.3. Режим таблицы

  1. Измените ширину полей, высоту строк.

  2. Поменяйте местами столбцы «Цена» и «Транспорт».

  3. Скройте столбец «Код»(пункт меню «Формат»/ «Скрыть столбцы»).

  4. Отобразите столбец «Код» (пункт меню «Формат»/ «Отобразить столбцы»).

  5. Отсортируйте таблицу «Туры» по странам в алфавитном порядке.

  6. Отсортируйте таблицу «Туры» по полю «Цена» в порядке возрастания.

  7. Используя фильтр по выделенному (установить курсор на поле, которое является критерием отбора, и нажать кнопку hello_html_m3816cc2a.jpg) выберите

  • железнодорожные туры;

  • туры, которые имеют льготы для детей;

  • туры в Великобританию;

  1. Используя «Изменить фильтр» (нажать кнопку hello_html_m3e1ad70e.jpg и ввести условия отбора в соответствующие поля) выберите

  • туры, продолжительностью до 10 дней( ввести условие : <10)

  • туры в Испанию или Италию (использовать вкладку или в нижнем левом углу)

  • туры, стоимость которых находится в интервале от 10 000р. до 20 000р (ввести условие : > 10000 and <20000).

ПРИМЕЧАНИЕ:

Действие фильтра запускается при помощи кнопки Применить фильтр - hello_html_m71a4ae09.jpg Действие фильтра отменяется при помощи кнопки Удалить фильтр - hello_html_m71a4ae09.jpg

  1. Используя фильтр исключить выделенное выберите авиа-туры (команда меню Записи / Фильтр /Исключить Выделенное)

  2. Выполните нормализацию таблицы с помощью Мастера анализа:

  • выберите пункт меню «Сервис»/ «Анализ»/ «Таблица»;

  • далее следуя указаниям мастера, выберите таблицу «Туры»;

  • выберите опцию «Да, разделение полей выполняется мастером»;

  • переименуйте таблицы;

  • далее следуйте указаниям мастера.

  1. Откройте окно схемы данных при помощи кнопки Схема данных hello_html_3e78e0af.jpg , которая доступна при активном окне базы данных и посмотрите связи, созданные мастером

hello_html_m3f5d7716.png

Рис. 1.4. Окно схемы данных


ПРАКТИЧЕСАЯ РАБОТА №2

СОЗДАНИЕ БАЗЫ ДАННЫХ С ИСПОЛЬЗОВАНИЕМ МАСТЕРА ТАБЛИЦ, ИМПОРТА ТАБЛИЦ. СОЗДАНИЕ ПОЛЕЙ ПОДСТАНОВОК В ТАБЛИЦАХ.
СОЗДАНИЕ СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ

1. Создайте новую базу данных «Компьютерный мир»

2. Создайте таблицы Компьютеры, Принтеры, Мониторы путем импортирования из файла Компьютеры.xls следующим образом.

Импорт таблиц:

  • в главном окне базы данных с помощью кнопки «Создать» выберите пункт «Импорт таблиц» или пункт меню «Файл»/«Внешние данные»/«Импорт» ;

  • в диалоговом окне «Импорт» укажите тип файла Microsoft Excel (*.xls);

  • найдите нужный файл , выделите его и нажмите кнопку «Импорт»;

  • выберите одноименный лист;

  • следуйте указаниям Мастера импорта электронных таблиц;


hello_html_m691db799.png

Рис. 2.1. Окно импорта таблиц

ПРИМЕЧАНИЕ:

Обязательно установите флажок «Первая строка содержит заголовки строк» и опцию «Автоматически создать ключ».

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

  2. При помощи Мастера Таблиц (кнопка «Создать»/»Мастер таблиц») создайте таблицу «Клиенты», выбрав необходимые поля.

hello_html_m5041e1bf.png

Рис. 2.2. Окно мастера создания таблиц

4.1. Перейдите в режим Конструктора по кнопке «Вид»: hello_html_87c9e15.jpg и проверьте размеры полей.

4.2. Заполните таблицу «Клиенты» по образцу».

Код

Фирмы

Фирма

Фамилия

Имя

Отчество

Город

Телефон

Марс

Чистяков

Владимир

Федорович

Петербург

(812)293-19-92

Сокол

Петров

Петр

Петрович

Петербург

(812)443-54-25

Забава

Ломтин

Аркадий

Аркадьевич

Москва

(888)555-66-77

Узор

Сидоров

Максим

Максимыч

Минск

(866) 64-32-28

Старт

Федоров

Иван

Федорович

Псков

(865) 76-67-98

Костер

Лаксандрова

Светлана

Игоревна

Сочи

(865) 64-78-43


5. Откройте таблицу «Компьютеры» в режиме таблицы и создайте новую запись.

6. Перейдите в режим Конструктора

6.1. Просмотрите вкладку Подстановка для поля ОЗУ.

6.2. Отредактируйте поле ОЗУ. Выберите тип данных Мастер Подстановок и введите фиксированный набор значений,

например 8, 16, 32.

6.3. Просмотрите вкладку Подстановка после работы мастера

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

8. В режиме Конструктора создайте таблицу «Заказы»:


Имя поля

Тип, характеристика

Примечание

НомерЗ

Счетчик, ключ, подпись- Номер Заказа


Дата

Дата/Время

Установить значение по умолчанию Date() - текущая дата

Компьютер

Числовое, длинное целое


КолК

Числовое, целое,


Принтер

Числовое, длинное целое


КолП

Числовое, целое,


Монитор

Числовое, длинное целое


КолМ

Числовое, целое,


Клиент

Числовое, длинное целое



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

9.1. Для поля «Компьютеры» измените тип на Мастер Подстановок, укажите, что данные будут выбираться из таблицы «Компьютеры».

9.2. Выберите поля «Модель», «ОЗУ», «ЦенаК».

9.3. Спрячьте ключевое поле и далее следуйте советам мастера.

9.4. Просмотрите вкладку Подстановка после работы мастера. Обратите внимание на номер присоединенного столбца, на число и ширину столбцов. (первый столбец «КодКомпьютера» спрятан с экрана, но именно эта информация хранится в поле, а не модель компьютера).

hello_html_41b25be0.png

Рис. 2.3. Вкладка Подстановка после работы мастера


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

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

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

10. Аналогичным образом отредактируйте поле «Монитор».

11. Подстановку можно осуществлять и без помощи мастера:

11.1. Для поля ««Принтер» » перейдите на вкладку Подстановка

hello_html_m6c03bf71.png

Рис.2.4. Вкладка Подстановка

  • Выберите тип элемента управления – Поле со списком

  • Тип источника строк – Таблица/запрос;

  • Источник строк Принтеры;

  • Присоединенный столбец1;

  • Число столбцов5;

  • Задайте ширину столбцов и ширину списка (ширина первого столбца=0);

  • Ограничиться спискомда;

  • Заглавия столбцовда;

11.2. Перейдите в режим таблицы и проверьте работу списка.

12. Аналогичным образом отредактируйте поле «Клиент».

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

14.1. Отредактируйте связи:

  • Выделите связь;

  • Из контекстного меню выберите изменить связь;

  • Укажите целостность и при необходимости каскадное удаление и добавление данных;

hello_html_1611e4c7.png

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

(Иногда на схеме данных отображаются сразу несколько таблиц, например Компьютеры, Компьютеры1, Компьютеры2. Простое удаление таблиц как правило не помогает. Необходимо сначала удалить связи, а затем сами таблицы.)

    1. Добавьте недостающие таблицы в схему данных( кнопка hello_html_42ba7a79.jpg на панели инструментов) и установите связи с таблицей «Заказы».

ПРИМЕЧАНИЕ:

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

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

hello_html_7e8f475c.png

Рис. 2.6. Окно схемы данных

14.3. Сохраните схему данных

15. Внесите не менее 20 записей в таблицу «Заказы».

hello_html_m39f005b7.png

Рис. 2.7. Таблица «Заказы»

ЛЕКЦИЯ 3. ОТБОР И СОРТИРОВКА ЗАПИСЕЙ С ПОМОЩЬЮ
ЗАПРОСОВ

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

3.1. Запросы и фильтры

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

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

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

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

Фильтры не могут быть сохранены как отдельный объект в окне базы данных (они сохраняются только в виде запроса).

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

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

Запрос можно использовать:

  • для просмотра подмножества записей таблицы без предварительного открытия этой таблицы или формы;

  • для того чтобы объединить в виде одной таблицы на экране данные из нескольких таблиц;

  • для просмотра отдельных полей таблицы;

  • для выполнения вычислений над значениями полей.


3.2. Редактирование и анализ данных с помощью запросов

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

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

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

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

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

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

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

ПРАКТИЧЕСКАЯ РАБОТА №3

СОЗДАНИЕ ЗАПРОСОВ В СРЕДЕ MS ACCESS


Цель работы: изучение процесса создания различных запросов на выборку

Создание простого запроса с помощью Мастера запросов

Откройте файл Турагенство.mdb

Наиболее просто создается запрос при помощи Мастера запросов. Чтобы создать простой запрос с помощью Мастера запросов, необходимо:

  1. В окне базы данных на панели объектов выбрать ярлык Запросы

  2. В списке запросов дважды щелкнуть левой кнопкой мыши на ярлыке Создание запроса с помощью мастера или нажать на кнопку Создать в окне базы данных и в появившемся диалоговом окне Новый запрос выбрать Простой запрос и нажать на кнопку ОК (рис. 3.1).

hello_html_1b73a2fa.png

Рис. 3.1. Окно создания нового запроса

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

hello_html_4598e41b.png

Рис. 3.2. Первое диалоговое окно Мастера простых запросов

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

  2. Нажать кнопку Далее.

  3. Следующее диалоговое окно будет последним. В нем нужно ввести имя создаваемого запроса (рис. 3.2) в поле Задайте имя запроса и выбрать дальнейшие действия: Открыть запрос для просмотра данных или Изменить макет запроса.

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

  5. Нажать на кнопку Готово.

hello_html_m7c60ad84.png

Рис. 3.3. Окно Мастера простых запросов на втором шаге

По окончании работы Мастера простых запросов в зависимости от выбора способа дальнейшей работы с запросом откроется или окно запроса в режиме просмотра (рис. 3.3), или окно Конструктора запросов, в котором можно модифицировать запрос. В качестве примера построения простого запроса с помощью Мастера простых запросов рассматривается создание запроса, содержащего все поля таблицы «Тур». результатом работы Мастера запросов стал запрос "Тур Запрос", изображенный на рис. 3.4.

hello_html_m3064f782.png

Рис. 3.4. Окно запроса в режиме просмотра

  1. Перейдите в режим Конструктора по кнопке Вид hello_html_m33eb3cce.png.

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

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

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

В области панелей инструментов MS Access отображается панель инструментов Конструктор запросов.

hello_html_m1fbcc97.png

Рис. 3.5. Окно запроса в режиме конструктора

  1. Задайте условие отбора туров, имеющих льготы для детей: в графе Условие отбора в поле Льготы для детей введите «да», в графе Вывод на экран снимите галочку (рис. 3.6).

hello_html_m167dc84.png

Рис. 3.6. Условия отбора в бланке запроса

  1. Просмотрите результат выполнения запроса в режиме Таблицы по кнопке Вид hello_html_51799e37.png.

  2. Закройте запрос.

Создание запроса с помощью конструктора

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

  1. В окне базы данных на панели объектов выбрать ярлык Запросы

  2. В списке запросов выбрать ярлык Создание запроса в режиме конструктора или нажать кнопку Создать, в появившемся окне Новый запрос выбрать Конструктор и нажать на кнопку ОК.

  3. В окне Добавление таблицы (см. рис. 3.7) выбрать одну или несколько таблиц или запросов для построения нового запроса и нажать кнопку Добавить Для удобства выбора таблиц и запросов в окне существуют следующие вкладки: Таблицы, на которой отображается список таблиц; Запросы, на которой отображается список запросов; Таблицы и запросы, на которой отображается список таблиц и запросов вместе.

hello_html_m52af83af.png

Рис. 3.7. Окно Добавление таблицы Конструктора запросов


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

hello_html_mc3f3da6.png

Рис. 3.8. Запрос по нескольким связанным таблицам

Внимание

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

  1. Удалите лишнюю связь, как указано выше.

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

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

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

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

    4. И наконец, вместо перетаскивания полей в бланк запроса из таблицы можно просто использовать раскрывающийся список полей в строке Поле бланка запроса

  3. Включите в запрос поля в соответствии с примером (рис. 3.9).

hello_html_4199bf04.png

Рис. 3.9. Бланк запроса

  1. Просмотрите результат выполнения запроса в режиме Таблицы по кнопке Вид hello_html_51799e37.png.

  2. Закройте запрос, сохранив его, в диалоговом окне Сохранение введите имя запроса «Ж/д туры».

hello_html_6199ca3f.png

Рис. 3.10. Диалоговое окно Сохранение запроса

  1. Посмотрите, как отображаются созданные запросы в окне Базы данных.

hello_html_m76522178.png

Рис. 3.11. Вкладка Запросы в окне Базы данных


Создание запроса с параметром

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

  1. Создайте новый запрос в режиме Конструктора аналогичный предыдущему.

  2. Чтобы определить параметр запроса, введите в строку Условие отбора для столбца "Страна" вместо конкретного значения слово или фразу и заключите их в квадратные скобки, например [Введите страну]. Эта фраза будет выдаваться в виде приглашения в диалоговом окне при выполнении запроса (рис. 3.12).

hello_html_12c3a7c5.png

Рис. 3.12. Диалоговое окно Введите значение параметра

  1. Нажмите кнопку Запуск hello_html_m3d801d2b.pngна панели инструментов, чтобы выполнить запрос, или откройте запрос в режиме таблицы по кнопке Вид. При выполнении запроса появляется диалоговое окно Введите значение параметра, в которое нужно ввести конкретное значение, например «Испания». Результат выполнения запроса представлен на рис. 3.13. В него попадают только туры в Испанию.

hello_html_fc8b896.png

Рис. 3.13. Результат выполнения запроса с параметром

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

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

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

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

Примеры вычисляемых полей

Стоимость: [Товары]![Цена]*[Продажи]![Количество]

Клиенты: [Клиенты]![Фамилия] & ‘‘ ’’&[ Клиенты]![Имя]& ‘‘ ’’& [Клиенты]![Отчество]

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

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

hello_html_52ef815b.png

Рис. 3.14. Окно построителя выражений

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

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

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

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

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

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

Создание запроса в вычисляемыми полями:

  1. Прежде чем мы создадим запрос с выражением, откройте таблицу «Тур» в режиме Конструктора и добавьте поле «Заказано» числового типа, размер поля – байт.

  2. Перейдите в режим Таблицы, сохранив изменения структуры таблицы и заполните поле произвольными числами ( от 1 до 20).

  3. Создайте запрос на основе таблицы «Тур». Включите поля «Страна_Код» (обратите внимание, что это поле подстановки), «Цена» и «Заказано».

  4. Сохраните запрос под именем «Сумма заказов»( это можно сделать по кнопке Сохранить hello_html_m6a30a04d.png, не закрывая запрос).

  5. Установите курсор в свободном столбце бланка запроса в графе Поле и вызовите Построитель выражений кнопкой Построить hello_html_b746711.png или пункт Построить контекстного меню.

  6. Введите выражение [Цена] * [Заказано] в Поле выражения (поля вставляются двойным щелчком мыши или выделить поле и нажать кнопку Вставить), и нажмите кнопку «ОК».

  7. Будет вставлено Выражение1: [Цена]*[Заказано], безликое «Выражение1» замените на «Сумма».

hello_html_m7cdcd582.png

Рис. 3.15. Бланк запроса с вычисляемым выражением

  1. Просмотрите результат выполнения запроса.

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

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

  2. Создайте запрос, отображающий туры, продолжительностью до 10 дней.

  3. Создайте запрос, отображающий туры в Великобританию.

  4. Создайте запрос, отображающий туры в Испанию или Италию.

  5. Создайте запрос, отображающий туры, стоимость которых находится в интервале от 10 000 до 20 000 .

  6. Создайте запрос, отображающий железнодорожные туры в Германию

Примечание

В строке Условие отбора и в строке ИЛИ (Or) указываются условия отбора записей. Такими условиями могут быть логические выражения. Например, (>30), (='Иванов'), (=10) и т. п.

Условия, находящиеся в одной строке, но в разных столбцах бланка, объединяются по логическому оператору And (И). Если нужно объединить условия отбора по логическому оператору Or (ИЛИ), разместите эти условия в разных строках бланка запроса. Пример использования нескольких условий отбора приведен на рис. 3.16

hello_html_m6602d15a.png

Рис. 3.16. Задание критериев отбора записей в запросе

Лекция 4. Выражения в MS Access

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

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

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

  • Идентификаторы — это имена объектов в MS Access (например, полей таблиц или запросов), которые при вычислении выражений заменяются их текущими значениями (для определения этой операции обычно используется термин «возвращают»). Например, идентификатор имени поля [Фамилия] в выражении возвращает значение поля Фамилия из текущей выделенной записи. Именованные константы и переменные, применяемые в программах Visual Basic для приложений (VBA), тоже являются идентификаторами. Существует несколько встроенных именованных констант, служащих идентификаторами: True, False, Yes, No И Null.

Внимание

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

  • Функции возвращают в выражение значение вместо имени функции. В отличие от идентификаторов, большинство функций требуют заключать в скобки свои аргументы — идентификаторы или значения подвыражений. Например, функция Date (), имеющая пустой список аргументов, возвращает текущую дату.

  • Операторыобычные значки арифметических операций (+, -, *, /) и другие символы и аббревиатуры. Большинство из них эквивалентны операторам традиционных языков программирования типа Basic. Некоторые — специфичны для MS Access или SQL, например Between или Like. Используемые в операции константы, идентификаторы и функции называются операндами.

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


4.1. Арифметические операторы

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

В табл.4.1 приведен список арифметических операторов для выражений MS Access.

Таблица 4.1. Арифметические операторы

hello_html_2b88c1bb.png

В таблице отсутствует знак равенства (=), поскольку он отнесен к группе операторов присваивания и сравнения.


4.2. Операторы присваивания и сравнения

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

Оператор сравнения соотносит значения двух операндов и возвращает логические значения (True или False), соответствующие результату сравнения. Основное назначение операторов сравнения — создание условий на значение, установление критериев выборки записей в запросах, определение действий макросов и контроль выполнения программ в VBA. В табл. 4.2 приведен список операторов сравнения MS Access.

Таблица 4.2. Операторы сравнения

Оператор

Пример

Результат

Описание

<

1 < 100

True

Меньше

<=

1 <= 1

True

Меньше либо равно

=

1 = 100

False

Равно

>=

100 >= 1

True

Больше либо равно

>

100 > 100

False

Больше

<>

1 <> 100

True

Не равно






 Примечание

Если один из операндов имеет значение Null (пустое значение), то любое" сравнение возвращает значение Null (тоже пустое значение).


4.3. Логические операторы

Логические (булевы) операторы используются для объединения результатов двух или более выражений сравнения в единое целое:

  • And — конъюнкции (логического И);

  • Or — дизъюнкции (логического ИЛИ);

  • Not — логического отрицания;

  • Хог — исключающего ИЛИ;

  • Eqv — логической эквивалентности;

  • Imp — логической импликации.

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


4.4. Операторы слияния строковых значений (конкатенации)

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

Пример: слияние "Visual" & " Basic" дает "Visual Basic". Обратите внимание на дополнительный пробел во втором слове, без него результат выглядел бы несколько иначе: "VisualBasic".

Операторы идентификации

Операторы идентификации применяются в качестве разделителей в ссылках на объекты (оператор "!" ).

Эти операторы позволяют идентифицировать определенные поля в таблицах.

Например:

  • Forms!Категории, Tables ! Категории — идентификация формы и таблицы с одинаковыми именами;

  • [Клиенты]![Фамилия] — определяет поле " Фамилия в таблице " Клиенты

  • [Заказы]![ДатаНазначения] - идентификатор поля "ДатаНазначения", находящегося в таблице "Заказы.

Операторы сравнения с образцом

Остальные операторы MS Access (табл. 4.3) упрощают создание выражений для выборки записей в запросах и относятся к операторам сравнения с образцом. Эти операторы возвращают True или False, в зависимости от соответствия значения в поле выбранной спецификации оператора. Наличие этих операторов в условиях на значение позволяет либо включать запись в запрос, если логическое значение, возвращаемое выражением, равно True, либо отвергать, если это значение — False.


Таблица 4.3. Другие операторы, используемые в выражениях MS Access




Оператор

Пример

Описание

Between

Between (-100) And (100)

Определяет, находится ли числовое значение в определенном диапазоне значений

Is

Is Null

Is Not Null

При использовании вместе с Null определяет, является ли значение Null или Not Null

In

In ("Москва", "Киев", "Санкт-Петербург")

Определяет, является ли строковое значение элементом списка значений

Like

Like "Ив*" Like "db??"

Определяет, начинается ли строковое значение с указанных символов (для правильной работы Like нужно добавить символ шаблона "*" или один или несколько символов "?")





Для пользователей, знакомых с шаблонами командной строки DOS, применение знаков (символов шаблона) "*" и "?" в операторах Like не вызовет затруднений. Точно так же, как в DOS, символ "*" замещает любое число знаков, а символ шаблона "?" замещает только один знак, поэтому Like "Ив*" вернет True для значений "Иванов", "Иващенко", "Иволгин". Для "dbl" или "dbl00" значение оператора Like "db??" будет False, но тот же оператор вернет для "dbl0" и "dbXX" значение True. Символы шаблона "*" и "?" могут стоять в любом месте шаблонной строки, . например:

  • Like "*ms* . ?*" — возвращает True только для значений, содержащих в своем теле подстроку "ms", после которой (может быть сразу, а может быть через несколько символов) следует не менее двух символов, первый из которых точка (.);

  • Like "?1???*" — возвращает True только для значений, состоящих не менее чем из пяти символов, вторым из которых является "1".


4.5. Константы

MS Access различает три вида констант: числовые, строковые и константы даты и времени.

  • Числовыми константами называются последовательности цифр, и, при необходимости, символы знака числа (+) и (-), символ десятичной точки (.) и, для записи числа в экспоненциальной нотации, символы порядка (Е) или (е). Для положительного числа знак (+) необязателен.

Пример записи числовых констант: 12345; -12.345; -6.76Е-23.

  • Строковыми или текстовыми константами называются любые символы, возвращаемые функцией Chr$ (), и их комбинации. Функция Chr$ (} возвращает символ в кодировке таблицей кодов ANSI, которой пользуется Windows. Кроме печатаемых символов, в которые входят буквы, цифры, знаки пунктуации и другие специальные символы клавиатуры, например "@", "~" и т. п., результатом функции могут быть и управляющие символы, такие как символ табуляции <ТаЬ>, возврат каретки и перевод строки, аналогичный по результату нажатию клавиши и др. Печатаемые символы должны быть заключены в двойные прямые кавычки. Часто, например при вводе строковых констант в ячейки таблиц или бланки запросов, MS Access сам добавляет кавычки, в иных случаях это придется сделать вручную.

Пример записи строковых констант : "Москва", "Иванов",

  • Константы даты/времени в MS Access выделяются символами #. Как и в случае остальных констант, если программа распознает ввод в бланк запроса даты или времени в стандартном формате MS Access, эти символы будут добавлены автоматически.

Пример констант даты и времени: #26/04/75#, #22-Маг-74#, #10:35:30#.

4.6. Функции

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

Встроенные в MS Access функции можно сгруппировать по категориям (именно так они сгруппированы в специальном инструменте, помогающем правильно создавать сложные выражения, который называется Построитель выражений)

Статистические функции

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

Описание этих функций, а также типов полей, к которым они могут быть применены, приведено в табл. 4.

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




Функция

Типы полей

Описание

Avg()

Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE

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

Count ( )

Все типы полей

Вычисляет количество непустых записей, возвращаемых запросом

First ( )

Все типы полей

Возвращает значение поля из первой записи результирующего набора

Last ()

Все типы полей

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

Max()

Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE

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

Min()

Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE

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

StDev() StDevP()

Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE

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

Sum( )

Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE

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

Var()

VarP ( )

Все типы полей, исключая Текстовый, Поле Memo и Поле объекта OLE

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




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

4.7. Анализ данных с помощью запросов

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

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

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

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

  • сводных таблиц и сводных диаграмм — аналогов соответствующих средств Excel.

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

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

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

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

ПРАКТИЧЕСКАЯ РАБОТА №4

СОЗДАНИЕ СЛОЖНЫХ ЗАПРОСОВ, СОЗДАНИЕ МОДИФИЦИРУЮЩИХ ЗАПРОСОВ В СРЕДЕ MS ACCESS

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

Запросы с выражениями

  1. Откройте базу данных «Шоколад».

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

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

  4. Создайте запрос, отображающий стоимость заказов на каждое изделие, используя выражение: СуммаЗаказа: [Стоимость]*[Заказ]. Включите в запрос все поля таблицы «Изделия». Поля «Стоимость» и «Заказ» на экран не выводите ( снимите галочку «Вывод на экран» в бланке запроса). Назовите запрос «Общая сумма заказов».

  5. Создайте запрос с параметром, отображающий конфеты по вводимому при открытии запроса сорту начинки, используя в условии отбора выражение LIKE [Какой сорт начинки] & ”*”. Откройте запрос в режиме таблицы. Обратите внимание, что для ввода параметра можно набрать только начальные буквы.

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

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

Запросы с использованием статистических функций

Первый запрос, который мы предлагаем построить, должен ответить на вопрос: "Конфеты с каким шоколадом пользуются большим спросом?". Воспользуемся уже существующим в базе «Шоколад» запросом «Общая сумма заказов»

  1. Создайте новый запрос в режиме конструктора.

  2. В открывшемся окне «Добавление таблицы» перейдите на вкладку «Запросы» и выберите запрос «Общая сумма заказов».

hello_html_m22fd4775.png

Рис.4.1. Диалоговое окно «Добавление таблицы»

  1. Перетащите в бланк заказа поля «Шоколад_Код» и «СуммаЗаказа».

  2. Нажмите кнопку Групповые операции hello_html_m242a7f0a.png на панели инструментов. В бланк запроса добавляется строка Групповая операция, содержащая по умолчанию в каждой ячейке операцию Группировка.

  3. Теперь нужно в строке Групповая операция задать необходимые статистические функции. Для поля « Шоколад_Код» оставьте значение Группировка, для поля «СуммаЗаказа»выберите из списка функцию Sum (рис. 4.2).

hello_html_m76abcdde.png

Рис.4.2. Использование статистических функций в запросе

  1. Нажмите кнопку Запуск на панели инструментов, чтобы посмотреть результаты запроса. Вы получите таблицу, которая содержит список сортов шоколада, и для каждого сорта указывается общая сумма заказов на изделия с этим сортом шоколада (рис. 4.3).Из таблицы видно, что самая большая сумма заказов - на изделия с молочным шоколадом.

hello_html_m3a1004c.png

Рис.4.3. Результат выполнения запроса

  1. Закройте запрос, сохранив eго под именем "Итоги по сорту шоколада".

  2. Создайте аналогичный запрос и определите среднюю и минимальную стоимость конфет по сорту шоколада .

  3. Создайте аналогичный запрос "Итоги по сорту начинки".

  4. Создайте новый запрос на основе таблицы «Изделия»

  5. Включите в бланк запроса два раза поле «Начинка_Код». Для одного поля оставьте значение Группировка, для другого поля выберите из списка функцию Count .

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

hello_html_m3640ed14.png

Рис.4.4. Результат выполнения запроса с использованием функции Count

  1. Создайте аналогичный запрос с группировкой по сорту ореха.

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

Модифицирующие запросы

Создание таблиц с помощью запроса

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

  1. Создать запрос на выборку.

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

  3. Выполнить запрос на изменение, тем самым поместив отобранные записи в новую таблицу.

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

  1. Откройте запрос, отображающий количество изделий, стоимость которых составляет менее 100 р. в режиме «Конструктора», выделив его имя в списке запросов в окне базы данных и нажав кнопку Конструктор.

  2. Удалите в бланке запроса критерий выборки: <100, в столбце «Заказ» добавьте условие <5.

Преобразование запроса на выборку в запрос на изменение

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

  1. Выберите команду меню Запрос, Создание таблицы [Меню Запрос доступно только в режиме Конструктора запроса.] или щелкните по стрелке на кнопке Тип запроса hello_html_m32825c28.png на панели инструментов и выберите из списка тип Создание таблицы (рис. 4.5).

hello_html_1d9e2426.png


Рис. 4.5. Меню Тип запроса

Диалоговое окно Создание таблицы показано на рис. 4.6.

  1. В текстовом поле имя таблицы введите описательное имя для новой таблицы, например: «Изделия_мал_спрос».

Нет рисунка

Рис. 4.6. Диалоговое окно Создание таблицы

Внимание

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

  1. Нажмите кнопку Вид hello_html_51799e37.pngна панели инструментов и просмотрите результат выборки. Вы увидите записи, которые будут помещены в новую таблицу.

Выполнение запроса на изменение

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

Для выполнения запроса:

  1. Нажмите кнопку Запуск hello_html_m3d801d2b.png на панели инструментов При этом он не отображает результирующий набор записей в режиме таблицы, как это делает запрос на выборку, а выполняет нужное действие. Перед его выполнением появляется сообщение, которое предупреждает, что в новую таблицу будут внесены изменения.[Хотя таблица еще не создана.]

Внимание

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

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

hello_html_4da84803.png

Рис. 4.7. Предупреждающее сообщение о числе новых записей

  1. Поскольку запрос запускается впервые, будет создана новая таблица "«Изделия_мал_спрос».

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

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

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

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

hello_html_mc8e4969.png

Рис. 4.8. Таблица, созданная при помощи запроса

Внимание

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


Создание запросов на добавление данных

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

  1. Раскройте список таблиц в окне базы данных и выделите таблицу "Изделия".

  2. Скопируйте таблицу в буфер обмена, нажав комбинацию клавиш + или команду «Копировать» контекстного меню.

  3. Вставьте таблицу из буфера обмена, нажав комбинацию клавиш + или команду «Вставить» контекстного меню. Появляется диалоговое окно Вставка таблицы.

hello_html_m403b5232.png

Рис. 4.9. диалоговое окно Вставка таблицы

  1. В группе Параметры вставки выберите переключатель «Только структура».

  2. В поле имя таблицы введите имя, например «Изделия(архив)». Нажмите кнопку ОК или клавишу .

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

  1. Раскройте список таблиц в окне базы данных и выделите в нем таблицу "Изделия".

  2. Сначала создайте запрос на выборку нужных записей. Перетащите из списка полей таблицы " Изделия " все поля в строку бланка запроса Поле, а из таблицы «Начинка» поле «Сорт начинки»

  3. В строке Условие отбора столбца «Сорт начинки» введите условие отбора "Кофейный крем"

  4. Запустите запрос на выборку, чтобы проверить, правильно ли отобраны записи. Оказались отобранными 5 записей.

  5. Выберите команду Запрос, Добавление или щелкните левой кнопкой мыши по стрелке на кнопке Тип запроса и выберите из списка элемент Добавление. Появляется диалоговое окно Добавление, аналогичное диалоговому окну Создание таблицы (рис. 4.10).

  6. В поле имя таблицы необходимо выбрать из списка имя таблицы, в которую будут добавляться записи. В данном случае по умолчанию в нем указана таблица "Изделия (архив)", которую мы только что создали. Нажмите кнопку ОК. (Если бы таблица, в которую нужно добавить записи, находилась в другой базе данных, необходимо было бы выбрать переключатель в другой базе данных и затем в поле имя файла указать имя файла MDB, который содержит требуемую таблицу.)

hello_html_4e4ff32d.png

Рис. 4.10. Диалоговое окно Добавление

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

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

  3. Сохраните запрос, дав ему имя: «Добавление».

Замечание

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

Создание запросов на обновление таблиц

Запросы на обновление используются главным образом для того, чтобы внести изменения сразу в большое количество записей с помощью одного запроса. Классическим примером такого запроса является изменение цены в таблице "Изделия" на некоторый постоянный коэффициент, например можно увеличить цену на изделия на 20%. Чтобы создать такой запрос:

  1. Сначала создайте запрос на выборку. Перетащите из списка полей таблицы " Изделия " все поля в строку бланка запроса Поле.

  2. Теперь изменим запрос, превратив его в запрос на обновление. Для этого выполните команду меню Запрос, Обновление или выберите при помощи кнопки Тип запроса. Изменяется заголовок запроса и появляется дополнительная строка Обновление. При этом исчезают строки Сортировка и Вывод на экран (рис. 4.11).

  3. Теперь нужно в строку Обновление ввести выражение, по которому будет вычисляться новая цена: [Стоимость]*0,2. В других случаях можно вводить константу, например, если нужно поменять дату во многих записях на текущую.

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

  5. Сохраните запрос, дав ему имя: «Обновление».

hello_html_m3da57dc0.png

Рис. 4.11. Диалоговое окно Обновление

Совет

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

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

Создание запросов на удаления записей

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

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

Для примера создадим запрос на удаления изделий с темным шоколадом.

  1. Создайте сначала запрос на выборку на основании двух таблиц: «» и, включите все поля таблицы «Изделия» с помощью * и поле «Сорт шоколада» таблицы «Шоколад».

  2. Преобразуйте запрос на выборку в запрос на удаление записей любым способом. В бланке запроса появится строка Удаление(рис. 4.12).. В первом столбце строки Удаление показывается значение Из, которое указывает, что будут удаляться записи из таблицы " Изделия ". Во втором столбце строки Удаление вы видите значение Условие что указывает на использование этого столбца для определения критерия отбора удаляемых записей. Введите в графу «Условия отбора» значение «темный».

hello_html_2e19a5ce.png


Рис. 4.12. Бланк запроса на Удаление

  1. Откройте запрос в режиме таблицы (кнопка «Вид») и убедитесь, что будут удалены именно записи с темным шоколадом

  2. Нажмите кнопку Запуск. Выводятся сообщение с приглашением подтвердить удаление записей и информация о количестве записей, которые будут удалены. В этот момент еще можно отменить удаление, для чего достаточно нажать кнопку Нет в окне сообщения. Нажмите кнопку Да, подтверждая удаление. Будут удалены все изделия с темным шоколадом и соответствующая строка из таблицы «Шоколад». Вы можете убедиться в этом, если откроете таблицу "Изделия" и таблицу «Шоколад».

  3. Сохраните запрос, дав ему имя: «Удаление».

Внимание

Такое каскадное удаление записей возможно, если в схеме данных установлен флажок - каскадное удаление связанных записей. Если удаления не произойдет, откройте схему данных и измените параметры связи.

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

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

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

  2. Перетащите поля «Сорт шоколада» из таблицы «Шоколад», затем «Сорт ореха» из таблицы «Орех» и поле «Заказы» из таблицы «Изделия» в первые три столбца бланка запроса.

  3. Выберите команду меню Запрос, Перекрестный или выберите Перекрестный при помощи кнопки Тип запроса. Заголовок окна запроса «Запрос1:на выборку» изменится на «Запрос1 перекрестный запрос» .Кроме того, в бланк запроса будут добавлены строки Перекрестная таблица и Групповая операция, в которую во всех столбцах автоматически вводится операция Группировка (рис. 4.13).

  4. Выберите в списке ячейки Перекрестная таблица столбца «Сорт ореха» значение Заголовки строк.

  5. Выберите в списке ячейки Перекрестная таблица столбца «Сорт шоколада» значение Заголовки столбцов..

  6. Выберите в списке ячейки Групповая операция столбца «Заказы» операцию Sum, ), а затем в ячейке Перекрестная таблица — значение Значение .

hello_html_5ca3bfda.png

Рис. 4.13. Бланк перекрестного запроса

  1. Нажмите кнопку Запуск или откройте запрос в режиме таблицы.

  2. Сохраните запрос.

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

hello_html_m3cce5a2d.png

Рис. 4.14. Диалоговое окно Новый запрос

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

hello_html_m1994ed.png

Рис. 4.15. Окно Мастера перекрестных таблиц

  1. Просмотрите результат - рис 4.16. Обратите внимание на столбец «Итоговое».

hello_html_2fb49b9.png

Рис. 4.16. Перекрестная таблица

Лекция 5. ОСНОВНЫЕ СВЕДЕНИЯ О ФОРМАХ
НАЗНАЧЕНИЕ ФОРМЫ ПРИ РАБОТЕ С БАЗОЙ ДАННЫХ

Формы являются основным средством организации интерфейса пользователя в приложениях MS ACCESS .Формы можно создавать с различными целями:

  • Вывод и редактирование данных. Это наиболее распространенная сфера применения форм. Формы обеспечивают вывод на экран данных в выбранном вами представлении.

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

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

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

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

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

Форма для работы с несколькими таблицами

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

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

ПРАКТИЧЕСКАЯ РАБОТА №5

СОЗДАНИЕ ФОРМ В СРЕДЕ MS ACCESS

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

Автоформы

Автоматический и самый быстрый способ создания однотабличных форм - автоформа.

Откройте созданную ранее базу данных «Компьютерный мир».

Создание автоформы в столбец

I способ :

  1. Перейдите на вкладку Таблицы

  2. Выделите таблицу «ЗАКАЗЫ»

  3. Нажмите кнопку hello_html_m645fa6af.png - «новый объект: автоформа » на панели инструментов.

  4. Сохраните готовую автоформу.

II способ:

  1. Перейдите на вкладку Формы.

  2. Нажмите кнопку Создать на вкладке формы.

  3. Выберите тип автоформы – в столбец.

  4. Укажите в качестве источника данных таблицу «КЛИЕНТЫ».

  5. Нажмите кнопку OK.

  6. Сохраните готовую автоформу.

hello_html_711387f5.png

Рис. 5.1. Диалоговое окно Создание формы

Создание табличной автоформы

Создайте автоформу на основе таблицы «КОМПЬЮТЕРЫ»

  1. Нажмите кнопку Создать на вкладке Формы

  2. Выберите тип автоформы – табличная

  3. Укажите в качестве источника данных таблицу «КОМПЬЮТЕРЫ»

  4. Кнопка OK

  5. Сохраните готовую автоформу

Создание ленточной автоформы

Создайте ленточную автоформу на основе таблицы «МОНИТОРЫ»

  1. Нажмите кнопку Создать на вкладке формы

  2. Выберите тип автоформы – ленточная

  3. Укажите в качестве источника данных таблицу «МОНИТОРЫ»

  4. Кнопка OK

  5. Сохраните готовую автоформу


Доработка формы в режиме конструктора

  1. Откройте созданную ранее форму «Компьютеры».

  2. Преобразуйте созданную автоформу к виду:

hello_html_m5f23e608.jpg

Рис. 5.2. Форма после доработки

  1. Для этого перейдите в режим Конструктора формы.

hello_html_2004ecb0.png

Кнопка выделения всей формы

hello_html_6330c3ce.gif

Рис. 5.3. Форма в режиме конструктора

  1. Увеличьте область заголовка и примечания формы.

  2. Воспользуйтесь Панелью Элементов (меню Вид или соответствующая кнопка hello_html_69465473.pngна панели инструментов) для добавления новых элементов управления в форму:

hello_html_m7f335f0b.png

Рис. 5.4. Панель элементов

5.1 В области заголовка разместите Надпись(кнопка hello_html_m222c77b6.png).

5.2 В области примечания разместите кнопки перехода между записями и кнопку закрытия формы ( кнопка hello_html_79dc09b4.png).

hello_html_76ad8c42.gif

Рис. 5.5. Форма в режиме конструктора

  1. Измените расположение полей в области данных:

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

  1. Поле «Код» можно убрать с экрана , но не удалять ( иначе будет нельзя добавлять новые записи).

Для этого выполните щелчок правой клавишей мыши по полю и выберите пункт Свойства или нажмите кнопку hello_html_m6d10082d.png -Свойства), на вкладке Макет выберите пункт Вывод на экран и установите Нет

  1. Добавьте рисунок.

Для этого воспользуйтесь пунктом меню Вставка/Рисунок или кнопкой hello_html_m1730acd7.png -Рисунок на Панели Элементов.

Если рисунок очень большой, выберите на вкладке Макет окна Свойства - Вписать в рамку.

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

Нhello_html_1a7e930b.gifа панели Элементов воспользуйтесь кнопкой hello_html_222dcfde.png Поле, выполните щелчок правой кнопкой мыши по созданному полю, (но не по надписи этого поля) – выберите Свойства/Вкладка Данные/Кнопка - … в строке Данные

При помощи Построителя выражений вставьте формулу см. рис.4.5.

  1. Просмотрите изменения в режиме формы.

  2. Измените размер формы, так чтобы помещались все кнопки и все поля, но не было пустого пространства.

  3. Перейдите в режим конструктора и измените свойства формы.

  4. Правой кнопкой мыши щелкните по кнопке выделения формы- см.рис.5.3-выберите Свойства /Вкладка Макет

hello_html_maca7668.png

Рис. 5.6. Окно свойств формы

Создание сложной формы
  1. Создайте форму «Продажи»:

hello_html_m3888f44.png

Рис. 5.7. Образец формы

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

hello_html_m2f45d876.png

Рис. 5.8. Автоформа «Компьютеры»

    1. Уберите кнопки переходов (Свойства- вкладка Макет) и добавьте кнопку закрытия формы.

    2. Создайте аналогичные автоформу в столбец «Мониторы вспомогательная» на основе таблицы «Мониторы» и автоформу в столбец «Принтеры вспомогательная» на основе таблицы «Принтеры».

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

hello_html_m4961036a.png

Рис. 5.9. Бланк запроса «Заказ»

    1. Для стоимости заказа постройте выражение, используя поля запроса

hello_html_5a440e11.png

Рис. 5.10. Выражение «Стоимость заказа» в окне Построителя

    1. При помощи Мастера форм на основе запроса «Заказ», создайте форму «Продажи».

    2. Поля «Код компьютера», «Код принтера» и «Код монитора» преобразуйте в Поле со списком (для этого выделите поле, пункт меню Формат или контекстное меню - Преобразовать элемент в - поле со списком) и создайте поля подстановок.

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

  1. Доработайте форму в режиме Конструктора.

hello_html_m5c9cd306.png

Рис. 5.11. Форма «Продажи» в режиме Конструктора

    1. Измените расположение полей.

    2. При помощи панели Элементов создайте кнопку «Данные о компьютере», позволяющую получить подробные данные о выбранной модели компьютера:

      1. Добавьте кнопку.

      2. В окне Категории выберите - работа с формой.

      3. В окне Действия - Открыть форму для отобранных записей.

      4. Выберите форму «Компьютеры вспомогательная».

      5. Выберите опцию – Открыть форму для отобранных записей.

      6. Для формы «Продажа» укажите поле КодК, Для формы «Компьютеры вспомогательная»- Код компьютера.

      7. Нажмите кнопку hello_html_m7350664b.png

      8. Внесите текст – Данные о компьютере

    3. Создайте кнопки «Данные о принтере» и «Данные о мониторе».

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

  2. Добавьте более подробную информацию о клиенте.

    1. Так как эта информация не была предварительно добавлена в запрос, измените свойства всей формы:

      1. Кнопка выделения формы.

      2. Команда Свойства.

      3. Вкладка Данные.

      4. Строка Источник записей.

      5. Кhello_html_3a6c96f0.gifнопка …

      6. Откроется окно конструктора запроса. Добавьте в бланк запроса по образцу поля «Город» и «Телефон» из таблицы «Клиент».

    2. Закройте запрос, подтвердив изменения.

    3. Воспользуйтесь кнопкой список полей или меню Вид –Список полей и перетащите поля «Город» и «Телефон» в область данных формы

    4. При помощи панели Элементов добавьте прямоугольник вокруг данных о заказчике.

    5. Сохраните форму.

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

  4. Создайте форму «Заказы».

hello_html_7f22fc6f.png

Рис. 5.12. Форма «Заказы»

    1. На основе запроса «Заказ» при помощи мастера создайте форму «Заказы» (не используйте поля «Город» и «Телефон»).

    2. Перейдите в режим Конструктора и доработайте форму.

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

    1. Измените свойства поля «Компьютер», так чтобы была видна модель компьютера и ОЗУ

    2. Выделите поле «КодК»

    3. Свойства

    4. Вкладка Данные

    5. Сhello_html_m233ac923.gifтрока Источник строк

    6. Кнопка …

    7. Откроется окно Конструктора запроса.

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

Создание формы с вкладками в режиме конструктора

Откройте созданную ранее базу данных «Отдел кадров».

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

hello_html_4641cc82.png

Рис. 5.13. Форма с вкладками. Вкладка «Анкета»

hello_html_m75598e3.png

Рис. 5.14. Вкладка «Работа»

hello_html_7fc36ed2.png

Рис. 5.15. Вкладка «Стаж»

  1. Доработайте таблицу Сотрудники: добавьте поле «Фото» (поле ole, файлы с фотографиями находятся в папке «Фото»).

Для добавления фотографий откройте таблицу «Сотрудники» в режиме таблицы и одновременно откройте папку «Фото».

Расположите оба окна без перекрытий.

Перетащите файлы с фотографиями в соответствующие ячейки таблицы (в таблице должна появиться надпись «точечный рисунок»)

Можно вставить фотографии в таблицу другим способом : пункт меню «Вставка», «Объект», в диалоговом окне «Вставка объекта» указать нужный файл.

hello_html_24ebc322.jpg

Рис. 5.16. Диалоговое окно «Вставка объекта»

  1. Для будущей формы создайте Запрос на выборку, включив все поля таблиц «Сотрудники» и «Штат», сохраните его под именем «Для формы с вкладками».

  2. Перейдите на вкладку Формы и нажмите кнопку Создать

  3. Выберите Конструктор

  4. Укажите в качестве источника данных запрос «Для формы с вкладками»

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

  1. Воспользуйтесь кнопкой hello_html_6c718be1.png -Набор вкладок на панели Элементов. Первоначально количество вкладок две. Вкладку можно добавить или удалить, при помощи контекстного меню, получаемого при щелчке правой кнопки мыши по имени вкладки. Переименовать вкладку можно в окне Свойства, вызываемого контекстным меню или кнопкой hello_html_m6d10082d.png- Свойства на панели инструментов(вкладка Макет, Подпись).

hello_html_118ef8c.png

Рис. 5.17. Окно « Свойства вкладки»

  1. Воспользуйтесь кнопкой hello_html_18a2d6bd.png-Список полей или командой меню Вид- Список полей и разместите поля на вкладках.

hello_html_m7414b386.png

Рис. 5.18. Форма с вкладками в режиме Конструктора

  1. Расположите поля соответствующим образом, поменяйте размер шрифта, удалите лишние надписи.

  2. Добавьте вкладку.

  3. Переименуйте вкладки.

  4. На вкладку «Стаж» добавьте новый элемент – Подчиненная форма/отчет с помощью соответствующей кнопки на панели элементов -hello_html_983f060.png, растянув рамку на всю ширину вкладки.

  5. В открывшемся диалоговом окне выберите опцию – Имеющиеся формы и выделите в списке форму «Выслуга подчиненная форма».

  6. Доработайте форму в режиме Конструктора (удалите надпись, настройте ширину )

Создание подчиненной формы

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

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

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

        1. Откройте базу данных «Отдел кадров».

        2. Перейдите на вкладку Формы

        3. На вкладке Формы нажмите кнопку Создать и выберите Мастер форм.

        4. Выберите в качестве источника данных таблицу «Сотрудники».

hello_html_216ba7f.png

Рис. 5.19. Диалоговое окно Мастера создания формы

        1. Перенесите все поля таблицы «Сотрудники» в правую часть.

hello_html_m2117f45b.png

Рис. 5.20. Выбор полей формы в Мастере создания формы

        1. Не нажимая кнопку Далее, аналогичным образом выберите таблицу «Выслуга» и перенесите все поля в правую часть.

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

hello_html_a8a1f98.png

Рис. 5.21. Тип представления данных

В противном случае укажите в качестве главной таблицу «Сотрудники ОК».

        1. Доработайте форму в режиме Конструктора.

Внимание

Обратите внимание, что Мастер создал две формы: «Сотрудники» и «Выслуга подчиненная форма».

Создание кнопочной формы

  1. Перейдите на вкладку Формы

  2. На вкладке Формы нажмите кнопку Создать и выберите Конструктор.

  3. Поле - «Выберите в качестве источника данных таблицу или запрос» оставьте пустым.

  4. Увеличьте границы области данных .

  5. Расположите кнопки открытия созданных форм с помощью соответствующей кнопки - hello_html_79dc09b4.png на панели элементов, следуя указаниям мастера.

hello_html_2d5a808e.png

Рис. 5.22. Диалоговое окно Мастера создания кнопок

  1. Выберите стиль для созданной формы, используя Автоформат –пункт меню Формат/ Автоформат или кнопка hello_html_m1beaac47.png на панели инструментов

  2. {bmc новый-5.bmp}.

  3. Сохраните форму с именем «Главная».

  4. Измените параметры запуска- пункт меню Сервис / Параметры Запуска.

  5. Укажите форму «Главная» в окне «Вывод формы/страницы»

Примечание

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

Лекция 6. ОСНОВНЫЕ СВЕДЕНИЯ ОБ ОТЧЕТАХ.
НАЗНАЧЕНИЕ И СОЗДАНИЕ ОТЧЕТОВ

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

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

Отчет может создаваться в режиме Конструктора или с помощью Мастера Отчетов.

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

  • Автоотчет в столбец — позволяет отобразить поля отчета в столбик;

  •  Автоотчет ленточный — позволяет расположить имена полей в виде заголовков столбцов таблицы, а записи в ее строках;

  •  Мастер диаграмм — предоставляет большие возможности при составлении отчета, в который можно вставить диаграммы;

  •  Почтовые наклейки — запускает мастера создания наклеек.

Режим Конструктора Отчетов очень похож на режим Конструктора Форм. Во многих случаях удобно использовать Мастер Отчетов. Созданный мастером отчет можно доработать в режиме Конструктора.

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

Наличие разделов отчета определяется командами меню:

Вид- Колонтитулы

Вид – Заголовок / Примечание отчета

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

ПРАКТИЧЕСКАЯ РАБОТА №6
РАБОТА С ОТЧЕТАМИ В СРЕДЕ MS ACCESS

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

Автоотчеты

  1. Откройте созданную ранее базу данных «Компьютерный мир».

  2. На основе таблицы «Компьютеры» создайте Автоотчет в столбец.

hello_html_3a051e8a.png

Рис. 6.1. Автоотчет в столбец

    1. Перейдите в режим Конструктора и отредактируйте ширину полей.

hello_html_m554631b3.png

Рис. 6.2. Автоотчет в режиме Конструктора

    1. При помощи команды меню Файл – Параметры страницы – вкладка Столбцы установите количество столбцов-2 и подберите ширину столбца.

hello_html_m3a5f24bc.png

Рис. 6.3. Автоотчет в 2 столбца

  1. На основе таблицы «Принтеры» создайте Автоотчет ленточный.

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

hello_html_3530fae3.png

Рис. 6.4. Вычисляемое поле

Надпись «Стоимость» разместите в области колонтитула.

hello_html_35bfb69c.png

Рис. 6.5. Автоотчет после доработки

    1. Добавьте группировку по типу принтера. Выделите поле и надпись красным цветом

hello_html_46d61159.png

Рис. 6.6. Автоотчет с группировкой

    1. Создайте группировку по полю тип принтера при помощи пункта меню Вид – Сортировка и группировка или одноименной кнопки hello_html_m4a1aeb24.png на панели инструментов.


hello_html_m21e24e18.png

Рис. 6.7. Окно «Сортировка и группировка»

    1. Отредактируйте отчет в режиме Конструктора.

      1. Перенесите поле «Тип» и надпись «Тип» в заголовок группы.

      2. Измените надпись «Тип» на «Тип принтера».

      3. Отформатируйте поле и надпись.

      4. Удалите нижний колонтитул.

    2. Добавьте вычисляемое поле «Итого» в конце каждой группы - количество принтеров в каждой группе.

hello_html_m5516ba15.png

Рис. 6.8. Вычисляемое поле «Итого»

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

    2. Скопируйте поле и надпись «Итого» в область примечания отчета -общее количество принтеров.

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

  1. Создайте запрос «Заказы компьютеров»:

hello_html_m1f62efe3.png

Рис. 6.9. Выражение «Компьютер» в бланке Запроса

    1. Создайте выражение «Компьютер».

    2. Создайте вычисляемое выражение «Стоимость».

hello_html_7c761092.png

Рис. 6.10. Запрос «Заказы компьютеров» в режиме просмотра

  1. При помощи Мастера на основе таблицы «Клиенты» и запроса «Заказы компьютеров» создайте отчет.

hello_html_54279b7b.png

Рис. 6.11. Отчет по клиентам

    1. Из таблицы «Клиенты» выберите поля : «Фирма», «Город», «Телефон», «Фамилия», «Имя», «Отчество».

    2. Из запроса «Заказы компьютеров» выберите все поля.

    3. Задайте группировку по Клиенту.

hello_html_m3bc06fcc.png

Рис. 6.12. Окно Мастера отчетов

    1. В диалоговом окне «Итоги» установите Итог по Стоимости.

hello_html_m52b40b4c.png

Рис. 6.13. Диалоговое окно «Итоги» Мастера отчетов

    1. Отредактируйте отчет в режиме Конструктора.

  1. Создайте итоговый отчет при помощи мастера на основе таблицы «Клиенты» и запроса «Заказы компьютеров».

hello_html_66c3e16c.png

Рис. 6.14. Итоговый отчет по клиентам

    1. Из таблицы «Клиенты» выберите поля: «Фирма», «Город», «Телефон», «Фамилия», «Имя», «Отчество».

    2. Из запроса «Заказы компьютеров» выберите поля: «Количество» и «Стоимость»

    3. Задайте группировку по Клиенту.

    4. Задайте итог по стоимости и укажите только итоги.

    5. Отредактируйте в режиме Конструктора.



Краткое описание документа:

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

В данном методическом пособие, подробно рассказано, как создавать таблицы в конструкторе и давать типы полям и свойства таблицы, запросы с помощью мастера запросов, отчеты с помощью конструктора и мастера.
Как правильно делать связи между таблицами.
Автор
Дата добавления 26.07.2014
Раздел Информатика
Подраздел Конспекты
Просмотров1445
Номер материала 141744072621
Получить свидетельство о публикации

Выберите специальность, которую Вы хотите получить:

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

ПЕРЕЙТИ В КАТАЛОГ КУРСОВ

Похожие материалы

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