Перейти к содержимому

Как организовать выбор записей из источника данных

  • автор:

Как организовать выбор записей из источника данных

На этом шаге мы рассмотрим использование MS Query .

Рассмотрим работу с MS Query на примере.

Файлы базы данных

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

  • Sort ( Сортировка ) . Числовое поле, в котором указаны порядковые номера записей.
  • Division ( Подразделение ) . Текстовое поле, в котором указано расположение подразделений компании (это один из таких регионов, как Asia ( Азия ), Europe ( Европа ), N.America ( Северная Америка ), Pasific Rim ( Тихоокеанское побережье ), S.America ( Южная Америка ).
  • Department ( Отдел ) . Текстовое поле, в котором указано наименование отдела внутри подразделения. Каждое подразделение организовано на основе следующих отделов: Accounting ( Бухгалтерия ), Advertising ( Реклама ), Data Processing ( Обработка данных ), Human Resources ( Кадры ), Operations ( Производство ), Public Relations ( Связи с общественностью ), R&D ( Научно-исследовательские и опытно-конструкторские работы ), Sales ( Сбыт ), Sequrity ( Безопасность ), Shipping ( Перевозки ) и Training ( Обучение ).
  • Category ( Категория ). Текстовое поле, в котором указывается категория бюджета. Всего существует четыре категории: Compensation ( Выплаты ), Equipment ( Оборудование ), Facility ( Льготы ) и Supplies & Servies ( Снабжение и обслуживание ).
  • Item ( Статья ). Текстовое поле, в котором указывается статья бюджета. Каждая бюджетная категория включает в себя различные статьи. Например, категория Compensation ( Выплаты ), включает в себя следующие бюджетные статьи: Benifits ( льготы ), Bonuses ( Премии ), Commissions ( Комиссионные вознаграждения ), Entertainment ( Обслуживание ), Payroll Taxes ( Налог на зарплату ), Salaries ( Зарплата ) и Training ( Обучение )
  • Month ( Месяц ). Текстовое поле, в котором указываются месяцы (точнее, их сокращенные названия — Jan, Feb и т.д.)
  • Budget ( Бюджет ). Числовое поле, в котором хранится планируемая общая сумма бюджета.
  • Actual ( Факт ). Числовое поле, в котором указаны фактические расходы.
  • Variance ( Разница ). Числовое поле, в котором указана разница между бюджетом и фактическими расходами.

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

  • В поле Division должно содержаться значение N.America .
  • В поле Depertment — Training
  • В поле Category — Compensation .
  • В поле Month — Jan, Feb или Mar

Один из возможных путей решения этой задачи — импортировать весь dBASE -файл в рабочий лист, а затем применить команды Данные | Фильтр | Автофильтр для выборки всех требуемых данных. Этот путь возможен, но так можно поступить не всегда. Преимущество использования MS Query состоит в том, что эта программа импортирует только те данные, которые необходимы.

Запуск MS Query

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

Выбор источника данных

При запуске MS Query появляется диалоговое окно Выбор источника данных (рис. 1).

Рис. 1. Диалоговое окно Выбор источника данных

В диалоговом окне есть три вкладки:

  • Базы данных со списком источников данных, известных программе MS Query . Этот список может быть как пустым, так и непустым, в зависимости от того, какие источники данных определены в Вашей системе.
  • Запросы со списком сохраненных запросов. Этот список тоже может быть пустым.
  • Кубы OLAP содержит список баз данных и запросов OLAP , доступных из MS Query .

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

Рис. 2. Диалоговое окно Создание нового источника данных

  1. Задайте имя для присвоения источнику данных . Введите полное имя источника данных, например, такое как База данных бюджета .
  2. Выберите драйвер для требуемого типа базы данных . Выберите драйвер для источника данных из списка установленных драйверов. Поскольку файл базы данных в нашем примере был создан в dBASE , выберите драйвер Microsoft dBASE Driver (*.dbf) .
  3. Связь . С помощью кнопки Связь выводится другое диалоговое окно (рис. 3), которое запрашивает дополнительную информацию для драйвера, выбранного в пункте 2. Например, можно выбрать каталог, в котором размещена база данных.

Рис. 3. Диалоговое окно Установка драйвера ODBC для dBASE

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

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

На следующем шаге мы рассмотрим использование мастера запросов.

4. Работа с системой управления базами данных Microsoft Access

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

Записи — Однотипные сведения о различных объектах БД.

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

Конструктор — Мастер для создания различных форм БД.

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

Поля таблицы данных — Поля имею уникальные имена, длину и тип и определяют формат информации об объектах БД.

Реляционная БД — БД логически связанная с другими БД с помощью полей с одинаковыми именами.

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

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

Типы данных — Типы, определяющие вид данных в БД — числовые, текстовые, даты, логические и т.п.

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

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

4.1. Создание однотабличной базы данных

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

Access — реляционная база данных (возможна одновременная работа с несколькими связанными таблицами базы данных), в которой предусмотрено много сервисных функций. Мастера облегчают создание таблицы, формы или отчета из имеющихся заготовок. Выражения используются в Access, например, для проверки допустимости введенного значения. Макросы позволяют автоматизировать многие процессы без программирования, тогда как встроенный в Access язык VBA (Visual Basic for Applications — диалект языка Basic для использования в приложениях Microsoft Office) дает возможность опытному пользователю программировать сложные процедуры обработки данных. Для взаимодействия Access с другими приложениями — источниками данных используют такие возможности языка программирования С, как функции и обращения к Windows API (Application Programming Interface — интерфейс прикладных программ Windows).

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

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

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

  • текстовый (по умолчанию) — текст или числа, не требующие расчетов (до 255 знаков);
  • числовой — числовые данные различных форматов, используемые для проведения расчетов четов;
  • дата/время — хранение информации о дате и времени (с 100 по 9999 год включительно);
  • денежный — денежные значения и числовые данные, используемые в расчетах, проводящихся с точностью до 15 знаков в целой и до 4 знаков в дробной части;
  • поле МЕМО — хранение комментариев (до 65 535 символов);
  • счетчик — специальное числовое поле, в котором автоматически присваивается уникальный порядковый номер каждой записи (значения поля обновлять нельзя);
  • логический — может иметь только одно из двух возможных значений (True/False);
  • поле объекта OLE — объект, связанный или внедренный в таблицу Access;
  • гиперссылка — строка, состоящая из букв и цифр и представляющая собой адрес гиперссылки.

В Access существует четыре способа создания пустой таблицы:

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

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

Ввод данных в ячейки таблицы. Особенности ввода следующие: при нажатии клавиши Del ячейка очищается; если ввод данных в ячейку прервать, нажав клавишу Esc, то восстановится старое значение, а если нажать клавиши Enter или Tab, то в ячейку заносится новое значение. Для редактирования текущего значения необходимо дважды щелкнуть мышью или нажать клавишу F2. Для некоторых типов данных (числовой, денежный, дата/время, логический) Access автоматически проверяет правильность ввода.

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

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

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

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

Отбор данных с помощью фильтра. Фильтр — это набор условий, применяемых для отбора подмножества записей. В Access существуют фильтры четырех типов: фильтр по выделенному фрагменту, обычный фильтр, расширенный фильтр и фильтр по вводу (команда Записи —› Фильтр).

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

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

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

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

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

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

4.2. Формирование запросов и отчетов для однотабличной базы данных

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

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

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

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

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

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

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

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

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

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

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

Автоотчет в столбец и Автоотчет ленточный — простейшие способы создания отчетов: достаточно указать только имя таблицы (запроса), на основе которого будет создан отчет, а остальное сделает Мастер отчетов.

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

4.3. Организация данных

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

В Access 97 выделяют три типа ключевых полей: простой ключ, составной ключ и внешний ключ.

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

В Access 97 можно задать три вида связей между таблицами: Один-ко-многим, Многие-ко-многим и Один-к-одному.

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

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

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

Тип создаваемой связи зависит от полей, для которых определяется связь:

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

4.4. Формирование сложных запросов

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

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

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

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

4.5. Создание сложных форм и отчетов с помощью кнопочного меню

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

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

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

4.6. Практические задания

Задание 1. Создание базы данных
Создайте новую базу данных, таблицу базы данных, определите поля таблицы в соответствии с табл. 1, сохраните созданную таблицу.

Таблица 1
Таблица данных. Преподаватели

Технология работы:

1. Для создания новой базы данных:

  • загрузите Access, выберите пункт Новая база данных;
  • в окне Файл новой базы данных в пункте Имя файла задайте имя базы Преподававтели (тип файла — Базы данных Access) и выберите папку (пункт Папка), где ваша база данных будет находиться;
  • щелкните по кнопке Создать.

2. Для создания таблицы базы данных:

  • выберите вкладку Таблицы и щелкните по кнопке Создать;
  • в окне Новая таблица выберите пункт Конструктор и щелкните по кнопке ОК. В результате откроется окно таблицы в режиме конструктора.

3. Определите поля таблицы в соответствии с табл. 1.
4. Сохраните созданную таблицу с именем Преподававтели.

Задание 2. Заполнение базы данных

1. Введите ограничения на данные, вводимые в поле Должность (должны вводиться только слова Профессор, Доцент или Ассистент).
2. Задайте текст сообщения об ошибке, который будет появляться на экране при вводе неправильных данных в поле Должность.
3. Задайте значение по умолчанию для поля Должность в виде слова Доцент.
4. Введите ограничения на данные в поле Код (эти данные не должны повторяться).
5. Заполните таблицу данными в соответствии с табл. 2 и проверьте реакцию системы на ввод неправильных данных в поле Должность.
6. Измените ширину каждого поля таблицы в соответствии с шириной данных.
7. Произведите поиск в таблице преподавателя Миронова.
8. Произведите замену данных: измените заработную плату ассистенту Сергеевой с 650 р. до 720 р.
9. Произведите сортировку данных в поле Год рождения по убыванию.
10. Произведите фильтрацию данных по полям Должность и Дисциплина.
11. Просмотрите созданную таблицу (как она будет выглядеть на листе бумаги при печати).

Таблица 2

Технология работы:

1. Войдите в режим Конструктор для проектируемой таблицы, щелкните по полю Должность, а затем по строке параметра Условие на значение. Щелкните по кнопке … и при помощи построителя выражений введите ограничения на данные, используя кнопку логического сложения Or.
2. В строку Сообщение об ошибке введите предложение «Такой должности нет, правильно введите данные».
3. В строку Значение по умолчанию введите слово «Доцент».
4. Замените в поле Код тип данных Счетчик на Числовой (тип данных Счетчик не обеспечивает возможности изменения кодов). Щелкните по строке параметра Индексированное поле, выберите в списке пункт Да (совпадения не допускаются), перейдите в Режим таблицы и сохраните таблицу.
5. Введите данные в таблицу в соответствии с табл. 2. Попробуйте в поле Должность ввести слово Лаборант. На экране должно появиться сообщение: «Такой должности нет, правильно введите данные». Введите правильное слово.
6. Для изменения ширины каждого поля таблицы выполните команду Формат —› Ширина столбца и в появившемся окне щелкните по кнопке По ширине данных.
7. Для поиска в таблице преподавателя Миронова:

  • переведите курсор в первую строку Фамилия;
  • выполните команду Правка —› Найти;
  • в появившейся строке параметра Образец введите Миронов;
  • в строке параметра Просмотр должно быть слово ВСЕ (искать по всем записям);
  • в строке параметра Совпадение выберите из списка С любой
    частью поля;
  • в строке параметра Только в текущем поле установите флажок;
  • щелкните по кнопке Найти. Курсор перейдет на вторую запись и выделит слово Миронов;
  • щелкните по кнопке Найти далее. Курсор перейдет на седьмую запись и также выделит слово Миронов;
  • щелкните по кнопке Закрыть для выхода из режима поиска.

8. Для изменения заработной платы ассистенту Сергеевой с 650 р. на 720 р.:

  • переведите курсор в первую строку поля Зарплата;
  • выполните команду Правка —› Заменить;
  • в появившемся окне в строку Образец введите 650;
  • в строку Заменить на введите 720;
  • щелкните по кнопке Закрыть.

9. Для сортировки данных в поле Год рождения по убыванию выполните команду Записи —› Сортировка —› Сортировка по убыванию.
10. Для фильтрации данных по полям Должность и Дисциплина:

  • щелкните по записи Доцент поля Должность и выполните команду Записи —› Фильтр —› Фильтр по выделенному. В таблице останутся только записи о преподавателях-доцентах;
  • щелкните по записи Информатика поля Дисциплина и выполните команду Записи —› Фильтр —› Фильтр по выделенному. В таблице останутся только записи о преподавателях-доцентах кафедры информатики;
  • для отмены фильтрации выполните команду Записи —› Удалить фильтр. В таблице появятся все данные.

11. Для просмотра созданной таблицы выполните команду Файл —› Предварительный просмотр. Закройте окно просмотра.

Задание 3. Ввод и просмотр данных посредством формы

1. С помощью Мастера форм создайте форму Состав преподавателей (тип — форма в один столбец).
2. Найдите запись о доценте Гришине, находясь в режиме формы.
3. Измените зарплату ассистенту Сергеевой с 720 р. на 750 р.
4. Произведите сортировку данных в поле Фамилия по убыванию.
5. Произведите фильтрацию данных по полю Должность.
6. Измените название поля Дисциплина на Преподаваемая дисциплина.
7. Просмотрите форму. Как она будет выглядеть на листе бумаги?

Технология работы:

1. Для создания формы Состав преподавателей:

  • откройте вкладку Формы в окне базы данных, щелкните по кнопке Создать и в появившемся окне выберите пункт Мастер форм;
  • щелкните по значку списка в нижней части окна, выберите таблицу Преподаватели и щелкните по кнопке ОК;
  • в появившемся окне выберите поля, которые будут присутствовать в форме (в данном примере присутствовать будут все поля), а затем щелкните по кнопке Далее;
  • в появившемся окне выберите вид Форма в один столбец и щелкните по кнопке Далее;
  • в появившемся окне выберите стиль оформления и щелкните по кнопке Далее;
  • в появившемся окне задайте имя формы Состав преподавателей и щелкните по кнопке Готово.

2. Для поиска преподавателя Миронова:

  • переведите курсор в первую строку поля Фамилия, выполните команду Правка —› Найти и в появившемся окне в строке Образец введите фамилию Миронов;
  • в строке параметра Просмотр должно быть слово ВСЕ (искать по всем записям);
  • в строке параметра Совпадение выберите из списка параметр С любой частью поля;
  • в строке параметра Только в текущем поле установите флажок;
  • щелкните по кнопке Найти. Курсор перейдет на вторую запись и выделит слово Миронов;
  • щелкните по кнопке Найти далее. Курсор перейдет на седьмую запись и также выделит слово Миронов;
  • щелкните по кнопке Закрыть для выхода из режима поиска.

3. Для изменения зарплаты ассистенту Сергеевой с 720 р. на 750 р.:

  • переведите курсор в первую строку поля Зарплата, выполните команду Правка —› Заменить и в появившемся окне в строке параметра Образец введите 720;
  • в строку параметра Заменить на введите 750, щелкните сначала по кнопке Найти далее, а затем по кнопке Заменить;
  • щелкните по кнопке Закрыть.

4. Для сортировки данных в поле Год рождения щелкните по любой записи поля Год рождения, выполните команду Записи —› Сортировка —› Сортировка по убыванию.
5. Для фильтрации данных по полю Должность:

  • щелкните по записи Доцент поля Должность и выполните команду Записи —› Фильтр —› Фильтр по выделенному. В форме останутся только записи о преподавателях-доцентах;
  • щелкните по записи Информатика поля Дисциплина и выполните команду Записи —› Фильтр —› Фильтр по выделенному. В форме останутся только записи о преподавателях-доцентах кафедры информатики;
  • для отмены фильтра выполните команду Записи —› Удалить фильтр. В таблице появятся все данные.

6. Для изменения поля Дисциплина на Преподаваемая дисциплина:

  • перейдите в режим конструктора (команда Вид —› Конструктор), щелкните правой кнопкой в поле Дисциплина. В появившемся меню выберите пункт Свойства. На экране откроется окно свойств для названия поля Дисциплина;
  • щелкните по строке с именем Подпись (где находится слово Дисциплина), удалите слово «Дисциплина» и введите «Преподаваемая дисциплина»;
  • для просмотра результата перейдите в режим формы (команда Вид —› Режим формы).

7. Для просмотра созданной формы выполните команду Файл —› Предварительный просмотр. Закройте окно просмотра.

Задание 4. Формирование запросов на выборку

1. На основе таблицы Преподаватели создайте простой запрос на выборку, в котором должны отображаться фамилии, имена, отчества преподавателей и их должность.
2. Данные запроса отсортируйте по должностям и сохраните запрос.
3. Создайте запрос на выборку с параметром, в котором должны отображаться фамилии, имена, отчества преподавателей и преподаваемые ими дисциплины. В качестве параметра задайте фамилию преподавателя и выполните этот запрос для преподавателя Гришина.

Технология работы:

1. Для создания простого запроса:

  • в окне базы данных откройте вкладку Запросы, в открывшемся окне щелкните по кнопке Создать, из появившихся пунктов окна Новый запрос выберите Простой запрос и щелкните по кнопке ОК;
  • в появившемся окне в строке Таблицы/Запросы выберите таблицу Преподаватели;
  • переведите поля Фамилия, Имя, Отчество, Должность из окна Доступные поля в окно Выбранные поля и щелкните по кнопке Далее;
  • в строке параметра Задайте имя запроса введите новое имя Должности преподавателей и щелкните по кнопке Готово. На экране появится таблица с результатами запроса.

2. Для сортировки данных щелкните в любой строке поля Должность, отсортируйте данные по убыванию (команда Записи —› Сортировка —› Сортировка по убыванию), сохраните запрос и закройте окно запроса.
3. Для создания запроса на выборку с параметром:

  • создайте запрос на выборку аналогично п. 1 для следующих полей таблицы Преподаватели: Фамилия, Имя, Отчество, Преподаваемая дисциплина; задайте имя запросу Преподаваемые дисциплины и щелкните по кнопке Готово. На экране появится таблица с результатами запроса;
  • перейдите в режим конструктора (команда Вид —› Конструктор), в строке параметра Условия отбора для поля Фамилия введите фразу (скобки тоже вводить) [Введите фамилию преподавателя];
  • выполните запрос (команда Запрос —› Запуск), в появившемся окне введите фамилию Гришин и щелкните по кнопке ОК. На экране появится таблица с данными о преподавателе Гришине — его имя, отчество и преподаваемая дисциплина;
  • сохраните запрос и закройте окно запроса.

Задание 5. Создание отчета с группированием данных
На основе таблицы Преподаватели создайте отчет с группированием данных по должностям.

Технология работы:

1. Откройте вкладку Отчеты, щелкните по кнопке Создать и в открывшемся окне выберите пункт Мастер отчетов.
2. Щелкните по значку раскрывающегося списка в нижней части окна, выберите из появившегося списка таблицу Преподаватели и щелкните по кнопке ОК.
3. В появившемся окне выберите поля, которые будут присутствовать в форме (в данном случае присутствовать будут все поля из таблицы), а затем щелкните по кнопке Далее.
4. Переведите выделение на поле Должность, щелкните сначала по кнопке >>, а затем по кнопке Далее.
5. Параметры появившегося окна оставьте без изменений (щелкните по кнопке Далее), выберите стиль оформления отчета и щелкните по кнопке Далее.
6. В появившемся окне введите название отчета Преподаватели и щелкните по кнопке Готово. Просмотрите, а затем закройте появившийся на экране сформированный отчет.

Задание 6. Создание инфологической и логической моделей базы данных

1. Разработайте инфологическую модель реляционной базы данных.
2. Разработайте логическую модель реляционной базы данных.

Технология работы:

1. Для разработки инфологической (информационно-логической) модели базы данных выделим три объекта: Студенты, Дисциплины и Преподаватели. Представим состав реквизитов этих объектов в виде — «название объекта (перечень реквизитов)»: Студенты (код студента, фамилия, имя, отчество, номер группы, дата рождения, стипендия, оценки), Дисциплины (код дисциплины, название дисциплины), Преподаватели (код преподавателя, фамилия, имя, отчество, дата рождения, телефон, заработная плата). Типы связей между этими объектами представлены на рис. 1 (M:N — Многие-ко-многим, 1:M — Один-ко-многим).

Рис. 1. Типы связей между объектами Студенты, Дисциплины и Преподаватели

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

Рис. 2. Инфологическая модель реляционной базы данных

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

Рис. 3. Логическая модель базы данных

Задание 7. Создание реляционной базы данных

1. Создайте базу данных Деканат.
2. Создайте структуру таблицы Студенты.
3. Создайте структуру таблицы Дисциплины.
4. Создайте структуру таблицы Преподаватели.
5. Создайте структуру таблицы Оценки.
6. Разработайте схему данных, т. е. создайте связи между таблицами.

1. Для создания базы данных Деканат выполните следующие действия:

  • загрузите Access, выберите пункт Новая база данных и щелкните по кнопке ОК;
  • в окне Файл новой базы данных задайте имя Деканат, выберите папку, где база будет находиться, и щелкните по кнопке Создать.

2. Для создания структуры таблицы Студенты:

  • в окне базы данных выберите вкладку Таблицы и щелкните по кнопке Создать;
  • в окне Новая таблица выберите пункт Конструктор, щелкните по кнопке ОК и определите поля таблицы в соответствии с табл. 3;
Таблица 3
  • в качестве ключевого поля задайте Код студента (команда Правка —› Ключевое поле), закройте таблицу, присвоив ей имя Студенты.
    3. Аналогично п. 2 создайте структуру таблицы Дисциплины в соответствии с данными табл. 4.
Таблица 4

В качестве ключевого поля задайте Код дисциплины.
4. Структура таблицы Преподаватели уже создана в задании 2.1 и заполнена данными, поэтому используйте эту таблицу с одним изменением — в соответствии с рис. 3 в структуру таблицы надо добавить поле Код дисциплины и заполнить его в соответствии с данными табл. 4.
5. Аналогично п. 2 создайте структуру таблицы Оценки в соответствии с данными табл. 5.

Таблица 5

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

выполните команду Сервис —› Схема данных, затем команду Связи —› Добавить таблицу и щелкните по кнопке Добавить;

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

Задание 8. Создание форм для ввода данных в таблицы

1. Создайте форму Студенты и заполните данными таблицу Студенты посредством формы Студенты.
2. Создайте форму Дисциплины и заполните данными таблицу Дисциплины посредством формы Дисциплины.
3. Создайте форму Оценки и заполните данными таблицу Оценки посредством формы Оценки.

Технология работы:

1. Для создания формы Студенты откройте вкладку Формы, щелкните по кнопке Создать, выберите таблицу Студенты, затем пункт Автоформа: ленточная и щелкните по кнопке ОК.
2. Заполните данными, приведенными в табл. 6, таблицу Студенты посредством формы.

Таблица 6

Закройте форму, присвоив ей имя Студенты.
3. Аналогично п. 1 создайте форму Дисциплины и заполните данными, приведенными в табл. 7, таблицу Дисциплины посредством формы. Закройте форму, присвоив ей имя Дисциплины.

Таблица 7

4. Аналогично п. 1 создайте форму Оценки и заполните данными, приведенными в табл. 8, таблицу Оценки посредством формы. Закройте форму, присвоив ей имя Оценки.

Таблица 8

Задание 9. Формирование сложных запросов

1. Разработайте запрос с параметрами о студентах заданной группы, в котором при вводе в окно параметров номера группы на экран должен выводиться состав этой группы.
2. Создайте запрос, в котором выводятся оценки студентов заданной группы по заданной дисциплине.
3. Создайте перекрестный запрос, в результате которого создастся выборка, отражающая средний балл по дисциплинам в группах.
4. Разработайте запрос на увеличение (на 10 %) заработной платы тех преподавателей, кто получает менее 600 руб.
5. Создайте запрос на удаление отчисленных студентов.
6. Разработайте запрос на создание базы данных отличников.
7. Для всех созданных вами запросов разработайте формы.

Технология работы:

1. Для создания запроса с параметрами о студентах заданной группы:

  • откройте вкладку Запросы и щелкните по кнопке Создать;
  • в появившемся окне выберите Простой запрос и щелкните по кнопке ОК;
  • в появившемся окне в строке Таблицы/Запросы выберите из списка таблицу Студенты;
  • перенесите все поля из окна Доступные поля в окно Выбранные поля и щелкните по кнопке Далее;
  • выводить надо все поля, поэтому еще раз щелкните по кнопке Далее;
  • в появившемся окне введите имя запроса Группа и щелкните по кнопке Готово. На экране появится таблица с данными запроса. Для установления номера группы перейдите в режим конструктора;
  • в строке Условия отбора для поля Номер группы введите фразу (скобки тоже вводить) [Введите номер группы];
  • выполните запрос (команда Запрос —› Запуск), в появившемся окне введите 2В и щелкните по кнопке ОК. На экране появится таблица с данными о студентах группы 2В;
  • сохраните запрос и закройте таблицу запроса.

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

  • на вкладке Запросы щелкните по кнопке Создать, выберите Простой запрос и щелкните по кнопке ОК;
  • выберите таблицу Студенты и перенесите поля Фамилия, Имя, Отчество, Номер группы в окно Выделенные поля;
  • в таблице Дисциплины выберите поле Название дисциплины;
  • в таблице Оценки выберите поле Оценки. Вы сформировали шесть полей запроса, которые связаны между собой посредством схемы данных;
  • щелкните по кнопке Далее, а затем в появившемся окне снова щелкните по кнопке Далее;
  • в появившемся окне введите имя запроса Оценки группы, затем щелкните по ячейке Изменение структуры запроса и щелкните по кнопке Готово;
  • в строке Условия отбора для поля Номер группы введите фразу [Введите номер группы], а для поля Название дисциплины — [Введите название дисциплины];
  • выполните запрос;
  • в первом появившемся окне введите 2В, затем щелкните по кнопке ОК, во втором — введите Информатика и щелкните по кнопке ОК. На экране появится таблица со списком группы 2В и оценками по информатике;
  • сохраните запрос и закройте таблицу запроса.

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

  • на вкладке Запросы щелкните по кнопке Создать, выберите Простой запрос и щелкните по кнопке ОК;
  • выберите из таблицы Студенты поле Номер группы, из таблицы Дисциплины — поле Название дисциплины, из таблицы Оценки — поле Оценки;
  • щелкните по кнопке Далее, а затем в появившемся окне снова щелкните по кнопке Далее;
  • в появившемся окне введите имя запроса Дисциплины оценки группы и щелкните по кнопке Готово;
  • сохраните запрос и закройте таблицу запроса.

Теперь можно создавать перекрестный запрос. Для этого:

  • на вкладке Запросы щелкните по кнопке Создать, выберите Перекрестный запрос и щелкните по кнопке ОК;
  • щелкните по ячейке Запросы, выберите Дисциплины оценки группы и щелкните по кнопке Далее;
  • выберите поле Название дисциплины и щелкните по кнопке Далее;
  • выберите поле Номер группы и щелкните по кнопке Далее;
  • выберите функцию AVG и щелкните по кнопке Далее;
  • выберите название запроса Средние оценки и щелкните по кнопке Готово;
  • закройте таблицу запроса.

4. Для создания запроса на изменение заработной платы преподавателей:

  • на вкладке Запросы щелкните по кнопке Создать и выберите Простой запрос;
  • в таблице Преподаватели выберите поле Зарплата;
  • щелкните по кнопке Далее, а затем в появившемся окне снова щелкните по кнопке Далее;
  • в появившемся окне введите имя запроса Изменение зарплаты;
  • щелкните по ячейке Изменение структуры запроса, затем по кнопке Готово;
  • в строке Условия отбора введите 600;
  • откройте пункт меню Запрос и выберите Обновление;
  • в строке конструктора запроса Обновление в поле Зарплата введите: [Зарплата]*1,1;
  • выполните запрос, подтвердив готовность на обновление данных;
  • закройте запрос, подтвердив его сохранение;
  • откройте форму Преподаватели, просмотрите изменение заработной платы у преподавателей, получающих меньше 600 р., и закройте форму.

5. Для запроса на отчисление студента гр. 2Г Перлова Кирилла Николаевича:

  • на вкладке Запросы щелкните по кнопке Создать и выберите Простой запрос;
  • в таблице Студенты выберите поля Фамилия, Имя, Отчество, Номер группы;
  • щелкните по кнопке Далее, а затем в появившемся окне снова щелкните по кнопке Далее;
  • в появившемся окне введите имя запроса Отчисленные студенты;
  • щелкните по ячейке Изменение структуры запроса, затем по кнопке Готово;
  • в строке Условия отбора введите: в поле Фамилия — Перлов, в поле Имя — Кирилл, в поле Отчество — Николаевич, в поле Номер группы — 2Г;
  • откройте пункт меню Запрос и выберите Удаление;
  • просмотрите удаляемую запись (команда Вид —› Режим таблицы);
  • если отчисляемый студент выбран правильно, то перейдите в режим конструктора и выполните запрос;
  • закройте запрос, откройте форму Студенты (удостоверьтесь в удалении записи о студенте Перлове) и закройте форму.

6. Для создания запроса на создание базы данных отличников:

  • на вкладке Запросы щелкните по кнопке Создать и выберите Простой запрос;
  • в таблице Студенты выберите поля Фамилия, Имя, Отчество, Номер группы, а в таблице Оценки — поле Оценки;
  • щелкните по кнопке Далее, а затем в появившемся окне снова щелкните по кнопке Далее;
  • в появившемся окне введите имя запроса Отличники;
  • щелкните по ячейке Изменение структуры запроса, затем по кнопке Готово;
  • выполните команду Вид —› Групповые операции, в строке Групповые операции поля Оценки щелкните по ячейке Групповые операции. Откройте раскрывающийся список и выберите функцию SUM;
  • в строке Условия отбора поля Оценки введите 20 (отличниками будем считать тех студентов, которые за четыре экзамена набрали 20 баллов);
  • просмотрите создаваемую базу (команда Вид —› Режим таблицы), перейдите в режим конструктора и выполните команду Запрос —› Создание таблицы;
  • введите имя таблицы Студенты-отличники и щелкните по кнопке ОК;
  • подтвердите создание таблицы и закройте (с сохранением) запрос;
  • откройте вкладку Таблицы, затем таблицу Студенты-отличники. Удостоверьтесь в правильности создания таблицы. Закройте таблицу.

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

Задание 10. Создание сложных форм

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

Технология работы:

1. Для создания сложной формы:

  • на вкладке Формы щелкните по кнопке Создать, выберите Мастер форм и, не выбирая таблицу или запрос, щелкните по кнопке ОК;
  • в таблице Дисциплины выберите поле Название дисциплины;
  • в таблице Студенты выберите поля Код студента, Фамилия, Имя, Отчество, Номер группы;
  • в таблице Оценки выберите поле Оценки и щелкните по кнопке Далее;
  • в появившемся окне оставьте предлагаемый вариант формы и щелкните по кнопке Далее;
  • оставьте табличный вариант подчиненной формы и щелкните по кнопке Далее;
  • выберите стиль оформления формы и щелкните по кнопке Далее;
  • введите название формы Дисциплины и оценки, щелкните по кнопке Готово и просмотрите полученную форму.

2. Для изменения расположения полей на экране перейдите в режим конструктора, стандартными средствами Windows (технология drag-and-drop) измените размеры подчиненной формы так, чтобы были видны все данные. Для этого надо переключаться из режима конструктора в режим формы, смотреть полученный результат и, если он не подходит, снова корректировать в режиме конструктора. Ширину столбцов в подчиненной форме можно изменять только в режиме формы.

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

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

4. Отредактируйте вид осей диаграммы. Для этого:

  • дважды щелкните сначала по диаграмме, а затем по значениям вертикальной оси и выберите вкладку Шкала;
  • уберите «галочку» у надписи Минимальное значение, а в ячейке справа от этого названия введите 1;
  • уберите «галочку» у надписи Максимальное значение, а в ячейке справа от этого названия введите 5;
  • уберите «галочку» у надписи Цена основных делений, а в ячейке справа от этого названия введите 1 и щелкните по кнопке ОК;
  • расширьте область диаграммы, перетащив правую границу окна диаграммы несколько правее;
  • закройте окно Microsoft Graph, выбрав в меню Файл пункт Выход и возврат в дисциплины и оценки: форма;
  • перейдите в режим формы, просмотрите ее для разных дисциплин и закройте форму.

Задание 11. Создание сложных отчетов

1. Создайте запрос, на основе которого будет формироваться отчет. В запросе должны присутствовать: из таблицы Студенты — поля Фамилия, Имя, Отчество и Номер группы, из таблицы Дисциплины — поле
Название дисциплины, из таблицы Оценки — поле Оценки.
2. Создайте отчет по итогам сессии. В отчете оценки студентов должны быть сгруппированы по номерам групп и дисциплинам. Для каждого студента должна вычисляться средняя оценка за сессию, а для каждой группы — среднее значение оценок по всем предметам.

Технология работы:

1. Для создания запроса:

  • на вкладке Запросы щелкните по кнопке Создать, выберите простой запрос и щелкните по кнопке ОК;
  • из таблицы Студенты выберите поля Фамилия, Имя, Отчество и Номер группы, из таблицы Дисциплины — поле Название дисциплины, из таблицы Оценки — поле Оценки и щелкните по кнопке Далее;
  • щелкните еще раз по кнопке Далее, введите название запроса Сессия , щелкните по кнопке Готово и закройте запрос.

2. Для создания итогового отчета:

  • на вкладке Отчеты щелкните по кнопке Создать, выберите Мастер отчетов, из раскрывающегося списка — запрос Сессия и щелкните по кнопке ОК;
  • выберите все поля запроса и щелкните по кнопке Далее;
  • щелкните еще раз по кнопке Далее, так как тип представления данных нас удовлетворяет;
  • добавьте уровень группировки по номеру группы, выбрав в левом окне Номер группы и перенеся его в правое окно;
  • щелкните сначала по кнопке Далее, затем по кнопке Итоги (для вычисления среднего балла);
  • выберите функцию AVG для вычисления среднего балла и щелкните по кнопке ОК;
  • щелкните по кнопке ОК, так как сортировка не требуется;
  • выберите ступенчатый макет отчета (он занимает меньше места и в нем наглядно представлены данные) и щелкните по кнопке Далее;
  • выберите стиль отчета и щелкните по кнопке Далее;
  • введите название отчета Итоги сессии и щелкните по кнопке Готово.

Задание 2.12. Разработка кнопочной формы-меню для работы с базами данных

  • Для создания кнопочного меню выполните следующие действия:
  • выполните команду Сервис —› Надстройки —› Диспетчер кнопочных форм и щелкните по кнопке Да;
  • щелкните по кнопке Создать, введите имя Меню и щелкните по кнопке ОК;
  • в окне выберите Меню и щелкните по кнопке Изменить;
  • создайте элементы данной кнопочной формы, щелкнув по кнопке Создать;
  • в строке Текст введите поясняющую надпись к первой создаваемой кнопке — Преподаватели;
  • в строке Команда выберите из списка Открытие формы в режиме редактирования;
  • в строке Форма выберите из списка форму Преподаватели и щелкните по кнопке ОК;
  • введите в меню все созданные формы и отчет;
  • закройте окно кнопочной формы (кнопка Закрыть) и щелкните по кнопке По умолчанию;
  • закройте диспетчер кнопочных форм, щелкнув по кнопке Закрыть;
  • на вкладке Формы щелкните правой кнопкой мыши по надписи Кнопочная форма, выберите пункт Переименовать, введите новое имя Форма-меню и нажмите по кнопке Enter;
  • откройте эту форму и просмотрите возможности открытия форм и отчета из меню.

4.7. Лабораторные работы

Лабораторная работа 1. Создание однотабличной базы данных (2 часа)

Порядок выполнения:

1. Ознакомьтесь с теоретическими сведениями (п. 4.1).
2. Выполните практическое задание 1.
3. Выполните практическое задание 2.
4. Выполните практическое задание 3.
5. Оформите отчет, в котором должны быть отражены следующие технологии по созданию однотабличной базы данных:

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

Лабораторная работа 2. Формирование запросов и отчетов для однотабличной базы данных (2 часа)

Порядок выполнения:

1. Ознакомьтесь с теоретическими сведениями (п. 4.2).
2. Выполните практическое задание 4.
3. Выполните практическое задание 5.
4. Оформите отчет, в котором должны быть отражены следующие технологии по формированию запросов и отчетов для однотабличной базы данных:

  • формирование запросов на выборку (создание простого запроса, сортировка данных запроса, сохранение запроса, создание запроса на выборку с параметром);
  • создание отчета с группированием данных по параметру.

Лабораторная работа 3. Разработка инфологической модели и создание структуры реляционной базы данных (2 часа)

Порядок выполнения:

1. Ознакомьтесь с теоретическими сведениями (п. 4.3).
2. Выполните практическое задание 6.
3. Выполните практическое задание 7.
4. Выполните практическое задание 8.
5. Оформите отчет, в котором должны быть отражены следующие технологии:

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

Лабораторная работа 4. Формирование сложных запросов (2 часа)

Порядок выполнения:

1. Ознакомьтесь с теоретическими сведениями (п. 4.4).
2. Выполните практическое задание 9.
3. Оформите отчет, в котором должны быть отражены основные технологии по формированию сложных запросов: разработка запроса с параметрами; создание запроса для полей одной таблицы по заданному полю другой; создание перекрестного запроса с выполнением статистических расчетов для выборки; разработка запроса на обновление записей одной или нескольких таблиц; создание запроса на удаление отдельных полей таблицы; разработка запроса на создание новой таблицы на основе всех или части данных из одной или нескольких таблиц; разработка форм для созданных запросов.

Лабораторная работа 5. Создание сложных форм и отчетов (2 часа)

Порядок выполнения:

1. Ознакомьтесь с теоретическими сведениями (п. 4.5).
2. Выполните практическое задание 10.
3. Выполните практическое задание 11.
4. Выполните практическое задание 12.
5. Оформите отчет, в котором должны быть отражены следующие технологии:

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

Использование запроса в качестве источника записей для формы или отчета

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

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

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

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

В этой статье

  • Использование существующего запроса в качестве источника записей формы или отчета
  • Создание запроса в качестве источника записей формы или отчета
  • Редактирование данных из запроса

Использование существующего запроса в качестве источника записей формы или отчета

В конструкторе применим свойство «Источник записей» к существующему запросу, который вы хотите использовать.

Свойство

  1. Откройте форму или отчет в конструкторе. Если лист свойств еще не открыт, нажмите F4, чтобы открыть его.
  2. В окне свойств на вкладке «Данные» щелкните поле свойства «Источник записей».
  3. Выполните одно из следующих действий:
    • Начните вводить имя запроса, который вы хотите использовать. Access автоматически заполняет имя объекта по мере его ввести. — или —
    • Щелкните стрелку и выберите запрос, который вы хотите использовать.

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

В конструкторе используйте кнопку «Построить» () в поле свойства «Источник записей» для создания запроса, который будет использовать в качестве источника записей.

Кнопка

  1. Откройте форму или отчет в конструкторе. Если лист свойств еще не открыт, нажмите F4, чтобы открыть его.
  2. В окне свойств на вкладке «Данные» щелкните поле свойства «Источник записей».
  3. Щелкните . Новый запрос откроется в конструкторе.
  4. Спроектировать запрос, а затем сохранить и закрыть его. Справку по разработке запроса см. в статье «Создание простого запроса на выборку».

Редактирование данных из запроса

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

Когда можно изменить данные из запроса?

Вы можете изменить данные из запроса, если:

  • Запрос основан только на одной таблице.
  • Запрос основан на двух таблицах, между отношение «один-к-одному» таблицами.
  • Свойство RecordsetType формы имеет тип Dynaset (Несогласованные обновления),и ни одно из условий в следующем разделе не применяется.

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

Когда я не могу редактировать данные из запроса?

Изменить данные из запроса невозможно, если:

  • Запрос является перекрестный запрос.
  • Запрос является SQL-запрос.
  • Поле, в который вы пытаетесь изменить, является вычисляемое поле. В этом случае вы можете редактировать данные из других полей запроса.
  • Запрос содержит предложение GROUP BY.

Настройка источника записей для отчета

Для выбора источника данных для отчета откройте отчет в режиме макета и нажмите клавиши ALT+ENTER, чтобы открыть список параметров. Нажмите квадрат прямо под вкладкой объекта отчета для выбора всего отчета, а затем в таблице свойств на вкладке Данные выберите пункт Источник записей для выбора параметра. Задать источник данных можно, выбрав объект из списка или нажав кнопку «Построить» , чтобы открыть запрос режиме конструктора, где можно построить источник записи для запроса.

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

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

В этой статье

  • Различные типы источников записей
    • Таблица
    • Именованный запрос
    • Внедренный запрос
    • Преобразование источника записей во внедренный запрос
      • Способ 1. Использование кнопки «Построить»
      • Способ 2. Добавление поля из связанной таблицы с помощью списка полей
      • Способ 3. Копирование и вставка SQL-кода из именованного запроса
      • Способ 4. Копирование и вставка SQL-кода из другой формы или отчета

      Различные типы источников записей

      Таблица

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

      Именованный запрос

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

      Внедренный запрос

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

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

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

      1. Щелкните правой кнопкой мыши запрос в области навигации и выберите команду Конструктор.
      2. На вкладке Конструктор в группе Результаты выберите команду Режим, а затем — пункт SQL.

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

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

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

      Тип источника записей по умолчанию

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

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

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

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

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

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

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

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

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

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

      Примечание: С помощью инструментов Конструктор отчетов, Мастер отчетов и Наклейки создаются «клиентские» отчеты, несовместимые с веб-базами данных. Дополнительные сведения о веб-базах данных см. в статье Редактирование или публикация веб-базы данных на узле SharePoint.

      Работа с источниками записей

      Преобразование источника записей во внедренный запрос

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

      Способ 1. Кнопка «Построить»

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

      1. В области навигации щелкните правой кнопкой мыши отчет, который необходимо изменить, и выберите пункт Режим макета.
      2. Щелкните правой кнопкой мыши в любом месте отчета и выберите пункт Свойства отчета.
      3. На вкладке Все щелкните поле свойства Источник записей и нажмите кнопку «Построить» .
      4. В приложении Access будет предложено подтвердить создание запроса на основе таблицы. Нажмите кнопку Да.

      1. На вкладке «Конструктор» в группе «Настройка запроса» нажмите кнопку «Добавить таблицы» («Добавление таблицы в Access 2013 «).
      2. Выберите таблицу или запрос, которые вы хотите добавить.
      3. Убедитесь в том, что добавляемые таблицы и запросы могут быть логически объединены. Например, поле «Код» в таблице «Клиент» может соответствовать полю «КодКлиента» в таблице «Заказы». Чтобы создать линию соединения, перетащите имя поля из одной таблицы или запроса на имя поля в другой таблице или запросе.

      1. На вкладке Конструктор в группе Результаты выберите команду Режим, а затем — Режим таблицы.
      2. Чтобы вернуться в конструктор, на вкладке Конструктор в группе Результаты выберите команду Режим, а затем — Конструктор.

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

      Способ 2. Добавление поля из связанной таблицы с помощью списка полей
      1. В области навигации щелкните правой кнопкой мыши отчет, который необходимо изменить, и выберите пункт Режим макета.
      2. Если область задач «Список полей» не отображается, на вкладке Конструктор в группе Сервис выберите команду Добавить поля.
      3. Если в верхней части списка полей есть ссылка Показать все таблицы, щелкните ее, чтобы отобразить поля в связанных и других таблицах.
      4. Разверните таблицу в разделе Доступные поля в связанной таблице: и перетащите в отчет одно из полей.

      Способ 3. Копирование и вставка SQL-кода из именованного запроса
      1. В области навигации щелкните правой кнопкой мыши запрос, содержащий инструкцию SQL, которую нужно скопировать, и выберите команду Конструктор.
      2. На вкладке Главная в группе Режимы выберите команду Режим, а затем — Режим SQL.
      3. Скопируйте текст в области SQL и закройте запрос, не сохраняя его.
      4. В области навигации щелкните правой кнопкой мыши отчет, в который необходимо добавить внедренный запрос, и выберите пункт Режим макета.
      5. Чтобы открыть страницу свойств, нажмите клавишу F4.
      6. На вкладке Все выделите текст в свойстве Источник записей и нажмите сочетание клавиш CTRL+P, чтобы вставить в поле свойства SQL-код.

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

      Способ 4. Копирование и вставка SQL-кода из другой формы или отчета

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

      1. В области навигации щелкните правой кнопкой мыши форму или отчет, содержащие внедренную инструкцию SQL, которую нужно скопировать, и выберите команду Режим макета.
      2. Щелкните правой кнопкой мыши в любом месте формы или отчета и выберите пункт Свойства формы или Свойства отчета.
      3. На вкладке Все выделите целиком инструкцию SQL в поле свойства Источник записей и скопируйте текст, нажав сочетание клавиш CTRL+C.
      4. Закройте форму или отчет без сохранения.
      5. В области навигации щелкните правой кнопкой мыши отчет, в который необходимо добавить внедренный запрос, и выберите пункт Режим макета.
      6. Щелкните правой кнопкой мыши в любом месте отчета и выберите пункт Свойства отчета.
      7. На вкладке Все выделите текст в свойстве Источник записей и нажмите сочетание клавиш CTRL+P, чтобы вставить в поле свойства SQL-код.

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

      Редактирование внедренного запроса

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

      1. В области навигации щелкните правой кнопкой мыши отчет, содержащий внедренный запрос, который необходимо изменить, и выберите пункт Режим макета.
      2. Щелкните правой кнопкой мыши в любом месте отчета и выберите пункт Свойства отчета.
      3. На вкладке Все щелкните поле свойства Источник записей и нажмите кнопку Построить .

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

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

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

      1. В области навигации щелкните правой кнопкой мыши отчет, содержащий внедренный запрос, и выберите пункт Режим макета.
      2. Щелкните правой кнопкой мыши в любом месте отчета и выберите пункт Свойства отчета.
      3. На вкладке Все щелкните поле свойства Источник записей и нажмите кнопку Построить .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *