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

Вызов Конструктора можно осуществить, используя:

  • • вкладку Главная – блок Режимы – Конструктор;
  • • контекстное меню на заголовке открытой таблицы – Конструктор;

Вкладка Создание

Рис. 11.7. Вкладка Создание

  • • вкладку Создание – блок Таблицы,
  • • контекстное меню на названии таблицы – Конструктор.

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

Всего можно использовать несколько типов данных: Текстовый, Числовой, Денежный, Счетчик, Поле memo, Дата/ Время, Логический, Гиперссылка, Поле объекта OLE, Вложение (для присоединения файлов таблиц, изображений, диа- грамм и т.п.).

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

Перемещение, удаление и добавление полей осуществляются с помощью мыши или команды Работа с таблицами: Конструктор – Сервис (см. рис. 11.8).

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

Для удаления поля его следует выделить и нажать клавишу DELETE. Чтобы выделить группу полей, следует использовать совместно с мышью клавиши SHIFT (для смежных полей) или CTRL (если ноля расположены не подряд).

Режим Конструктора таблиц

Рис. 11.8. Режим Конструктора таблиц

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

  • • в контекстном меню нужного поля указать Ключевое поле;
  • • вкладка Работа с таблицами: Конструктор – блок Сервис – Ключевое поле.

Если поле назначено ключевым по ошибке, следует использовать команду Отменить ключевое поле или CTRL + Z, либо в контекстном меню этого поля снять активизацию Ключевое поле.

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

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

Увеличение размеров области свойств осуществляется нажатием клавиш SHIFT + F2. Заполнение некоторых свойств можно выполнить с помощью вспомогательного окна Мастера, вызываемого кнопкой Построитель, расположенной справа от ячейки соответствующего свойства или кнопкой на ленте вкладки Работа с таблицами: Конструктор – блок Сервис – Построитель.

Типы полей могут быть разными:

  • текстовый (для определения поля в виде текстовой строки до 255 символов);
  • числовой (для полей, в которых может храниться числовое содержимое);
  • денежный (для полей, в которых могут храниться данные денежного формата любой валюты);
  • счетчик (числовое поле, автоматически устанавливающее значения, причем для каждой следующей записи – на единицу больше);
  • поле Memo (для полей типа небольшого до 64 000 символов файла ("файл в файле"));
  • дата/время (для полей, характеризующих временные данные);
  • логический (для полей, которые могут принимать только два значения: Да/Нет, Истина/Ложь);
  • гиперссылка (для полей ссылок на соответствующие адреса, ресурсы и т.п.);
  • поле объекта OLE (для полей, в которые внедряются или связываются различного типа объекты: таблицы Excel, видео- и аудиоклипы, изображения и т.п.);
  • вложение (для присоединения файлов таблиц, изображений, диаграмм и т.п.).

Свойства каждого поля устанавливаются в нижней части окна Конструктора. Каждое свойство описывает особенности конкретного поля (рис. 11.9).

Свойства полей таблицы

Рис. 11.9. Свойства полей таблицы

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

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

Для типов Дата/Время существует набор форматов:

  • • полный (15.04.94 05:30:10 pm);
  • • длинный (Среда, 15 апреля 1994);
  • • средний (15 апр 94);
  • • краткий (15.04.90);
  • • длинный формат времени (05:30:10 pm);
  • • средний формат времени (05:30 pm);
  • • краткий формат времени (17:30).

Константы типа Дата/Время ограничиваются символами "#" (например, #01.03.57#).

Для Логического типа: Да/Нет – Yes/No (по умолчанию); Истина/Ложь – True/False; Вкл/Выкл – On/Off.

Число десятичных знаков задает число знаков после разделителя (от 0 до 15).

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

Размер ноля для числового типа данных приведен в табл. 11.1.

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

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

Подпись поля определяет подпись для использования в формах и отчетах, если она отличается от имени поля.

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

Таблица 11.1

Характеристика типов числовых полей

Тип

Размер

Байт (1 байт)

Целые числа от 0 до 255

Целое (2 байта)

Целые числа от -32 768 до +32 767

Длинное целое (4 байта)

Целые числа от -2 147 483 648 до +2 147 483 647

С плавающей точкой (4 байта)

С точностью до 6 знаков от-3,4-1038 до+ 3,4-1038

С плавающей точкой (8 байта)

С точностью до 10 знаков от -1,797 • 10308 до +1,797 -10308

Таблица 11.2

Символы поля

Обязательные

Необязательные

0 – цифра

9 – цифра

I – буква

# – цифра, знак +, знак -, пробел

а – буква или цифра

а – буква или цифра

@ – любой символ или пробел

С – любой символ или пробел

< (>) – преобразует все символы справа к нижнему (верхнему) регистру

! – маску следует заполнять справа налево

Условие на значение указывает, каким условиям должны удовлетворять значения, вводимые в данное поле. Оно задается выражением, состоящим из операторов сравнения и значений, используемых для сравнения (операндов). При вводе данных производится автоматическая проверка их соответствия указанным типам и проверка выполнения заданных условий. Например, при описании поля Дата рождения ему присваивается тип Дата и задается интервал возможных значений, например: >01/01/1920 и <01/01/2000.

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

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

Свойство Пустые строки позволяет хранить пустые строки в текстовых и memo нолях.

Индексированное поле задает построение индекса для полей с типом данных Текстовый, Числовой, Денежный, Дата/Время и Счетчик. Назначение индекса – ускорение выполнения запросов, поиска и сортировки. Возможные значения этого свойства:

  • Нет (не создает индекс или удаляет существующий индекс);
  • Да (совпадения допускаются) (создает индекс, если в нем допускаются совпадения значений для разных записей);
  • Да (совпадения не допускаются) (создает уникальный индекс).

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

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

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

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

Главная таблица содержит первичный ключ и составляет часть "один" в отношении "один-ко-многим", подчиненная таблица содержит такой же тип информации со стороны "много" в отношении "один-ко-многим".

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

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

Технология связывания таблиц:

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

Установление связей между таблицами

Рис. 11.10. Установление связей между таблицами

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

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

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

В окне Схема данных двойной щелчок по линии связи позволит открыть окно Изменение связей (рис. 11.12). В нем

Автоматически установленная связь между таблицами

Рис. 11.11. Автоматически установленная связь между таблицами

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

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

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

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

Поиск и предоставление данных из БД – одна из основных задач СУБД. Естественно, средства, позволяющие извлечь информацию, достаточно многообразны. На рис. 11.13 приведена их классификация.

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

К простейшим видам поиска относится использование команд Правка – Найти и ПравкаЗаменить или кнопка . В условиях поиска могут быть использованы операции сравнения (>, <, <=, >=, =, <>), а также подстановочные символы:

* (любая цифра или символ) может быть первым или последним символом текстовой строки (например, wh* – поиск слов what, white и why);

Классификация средств поиска в программе MS Access

Рис. 11.13. Классификация средств поиска в программе MS Access

? (любой текстовый символ) (например, b?ll – поиск слов ball, bell и bill);

[] любой один символ из заключенных в скобки. Например, [*];

В[ае]ll – поиск слов ball и bell, но не bill;

/ (любой символ, кроме заключенных в скобки). Например, b[!ае]ll – поиск слов bill и bull, но не bell или ball;

– (любой символ из диапазона). Нужно указывать по возрастанию (от А до Z, но не от Z до А). Например, b[a–c]d – поиск слов bad, bbd и bed;

# (любая цифра). Например, 1#3 – поиск значений 103, 113, 123.

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

В СУБД MS Access несколько видов фильтров.

Для установки фильтров необходимо выполнить команду вкладка Главная – блок Сортировка и фильтр – Фильтр или воспользоваться одной из кнопок на панели инструментов (рис. 11.14).

Виды фильтров и правила установки:

  • По выделенному: выделить фрагмент содержимого нужного поля и выбрать Выделение;
  • Текстовый/Числовой/По дате: вызов контекстного меню на поле таблицы и в зависимости от типа данных в этом поле выбрать Текстовый /Числовой/Дата;
  • Расширенный фильтр: команда Главная – группа Сортировка и фильтры – Дополнительно – Расширенный фильтр;

Инструменты фильтрации

Рис. 11.14. Инструменты фильтрации

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

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

Существует два основных типа запросов: на выборку и на изменение.

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

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

При работе с запросом можно выделить два этапа: формирование (проектирование) и выполнение.

Формирование запроса производится в Конструкторе или Мастере запросов (Создание – Запросы – Конструктор запросов/Мастер запросов) (рис. 11.15).

Бланк запроса

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

Бланк запроса имеет два раздела:

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

Наличие "галочки" в строке Вывод на экран означает присутствие данного поля в таблице результатов поиска. Критерии запроса устанавливаются в строке Условие отбора и последующих строках, связанных логическим оператором "OR" ("ИЛИ"). Все критерии отбора, указанные в одной строке, объединяются оператором "AND" ("И").

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

Запросы на выборку бывают разных типов: выборка, перекрестный, итоговый, параметрический. По умолчанию создается запрос на выборку. Тип запроса может быть преобразован в любой другой тип: 1) командой из блока Тип запроса (рис. 11.16); 2) с помощью блока Показать или скрыть; 3) контекстное меню на свободном пространстве в разделе таблиц – Тип запроса.

Выполнение запроса осуществляется командой Результаты – Выполнить.

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

Для построения выражений имеется специальное средство – Построитель выражений, вызываемый правой кнопкой мыши на поле или кнопкой Построить, диалоговое окно которого представлено на рис. 11.16.

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

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

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

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

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

Для этого в строку Условие отбора вводится фраза в квадратных скобках, которая будет выводиться в качестве "подсказки"-комментария в процессе диалога (рис. 11.17). Таких параметров в одном запросе может быть несколько, каждый – для своего поля. При задании нескольких параметров имя каждого должно быть уникальным.

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

Рис. 11.17. Параметрический запрос

При выборе данных может понадобиться агрегировать данные, найти какую-либо функцию (например, сумму или максимальное значение в поле). Запросы, выполняющие вычисления над группой записей, называются итоговыми. Для их составления следует выполнить команду Работа с запросами: Конструктор – блок Показать или Скрыть – Итоги. В бланке запроса появится новая строка с наименованием Групповая операция (в ней содержится слово "Группировка", а в активизированном списке можно указать функцию для расчета: SUM – сложение; AVG – среднее значение; MIN – минимальное значение; МАХ – максимальное значение; COUNT – количество записей со значениями (без пустых значений); STDEV – стандартное отклонение; VAR – дисперсия; FIRST – значение в первой записи; LAST – значение в последней записи). После выполнения итогового запроса получается таблица с подведенными итогами.

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

При активизации этой команды в бланк запроса добавляются две строки (рис. 11.18): "Групповая операция" и "Перекрестная таблица". В первой из них нужно установить оп-

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

Рис. 11.18. Перекрестный запрос

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

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

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

Статус запроса меняется командой Работа с запросами: Конструктор – блок Тип запроса (см. рис. 11.15).

В результате выполнения запроса на создание таблицы получается новая таблица среди объектов Таблицы. В нее могут входить поля из разных таблиц базы и расчетные ноля. Для создания такого запроса используется команда Создание таблицы (см. рис. 11.15).

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

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

В приведенном на рис. 11.19 примере запрос на обновление увеличивает размер оклада сотрудникам, занимающим должность "менеджер по обслуживанию клиентов".

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

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

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

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

При установлении для запроса статуса На добавление в бланке запроса появляется строка Добавление, где указываются названия тех строк таблицы приемника, в которые копируются данные. В приведенном на рис. 11.20 примере запроса отбираются данные за 2012 г. и копируются в другую таблицу – производится архивация неактуальных данных.

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

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

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

Рис. 11.20. Запрос на добавление

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

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

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

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

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

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

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

Диалоговое окно Параметры объединения (рис. 11.21) позволяет понять тип и направленность объединения, вызвав его двойным щелчком на линии связи.

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

Внешние объединения создаются путем изменения внутренних объединений.

Окно Параметры объединения

Рис. 11.21. Окно Параметры объединения

В режиме Конструктора запроса изменяемое объединение активизируется двойным щелчком. Па экране появится диалоговое окно Параметры объединения, в котором перечисляются варианты объединения 2 и 3. Выбирается нужный вариант.

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

Если в запрос включается несвязанная таблица, то она влияет на результат поиска (поскольку в запросе формируются все комбинации записей, происходит объединение "все со всеми", это называется "полное объединение" или "декартово произведение") – выборка становится значительно больше.

К запросам специального типа относятся:

  • • поиск записей без подчиненных;
  • • поиск повторяющихся записей.

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

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

Рассмотрим пример составления запроса Клиенты без контрактов.

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

Новый запрос

Рис. 11.22. Новый запрос

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

Запрос можно сохранить в базе данных под типовым именем "Клиенты без подчиненных в Договоры" или дать свой вариант.

Записи без подчиненных

Рис. 11.23. Записи без подчиненных

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

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

Технология создания такого запроса подобна запросу на "поиск без подчиненных", только в окне Новый запрос (см. рис. 11.22) выбирается вариант Повторяющиеся записи. Далее выбираются таблица/запрос, где надо найти записи с повторяющимися значениями (в нашем случае – Договоры); затем определяются поля, дублирование которых будет выявляться (Код тура, Код клиента, Дата начала тура, Код сотрудника); выбор полей, дополнительно отображающихся в ответе – Номер договора; задание имени запросу, по умолчанию – Поиск повторений для Договоры. Будут найдены все повторяющиеся значения по заданным полям. Полученный запрос в режиме Конструктора будет выглядеть, как показано на рис. 11.24.

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

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

Переключившись в режим Сводной диаграммы, можно визуализировать полученные данные в графическом виде (рис. 11.26).

Форма в MS Access – это объект базы данных, который можно использовать для ввода, изменения или отображения данных из таблицы или запроса (рис. 11.27). Формы могут применяться для управления доступом к данным: с их помощью можно определять, какие поля или строки будут отображаться (некоторым пользователям достаточно видеть лишь

Запрос на поиск повторяющихся записей

Рис. 11.24. Запрос на поиск повторяющихся записей

Создание сводной таблицы

Рис. 11.25. Создание сводной таблицы

Создание сводной диаграммы

Рис. 11.26. Создание сводной диаграммы

Форма Сотрудники

Рис. 11.27. Форма Сотрудники

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

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

Форма может представляться в трех режимах: макета; конструктора и формы. Переключение между ними осуществляется с вкладки Главная – блок Режимы – Режим (рис. 11.28).

Группа Формы вкладки Создание

Рис. 11.28. Группа Формы вкладки Создание

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

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

Формы могут создаваться для выбранной таблицы:

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

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

Для ее создания нужно выделить или открыть таблицу/запрос и активизировать инструмент Другие формы – Разделенная форма. Работа с разделенной формой дает пре-

Форма в режиме Конструктора

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

Разделенная форма

Рис. 11.30. Разделенная форма

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

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

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

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

Различают следующие элементы управления:

Присоединенные (источником данных служат поля таблицы/запроса);

Пустая форма

Рис. 11.31. Пустая форма

Группа Элементы управления

Рис. 11.32. Группа Элементы управления

  • Свободные – нс имеющие источника данных (поля или выражения) (используются для вывода на экран сведений, линий, прямоугольников и рисунков);
  • Вычисляемые (источником данных является выражение, служащее источником данных элемента, а не поле). Выражение – это сочетание операторов, имен других элементов управления, имен нолей, функций, возвращающих единственное значение, и констант (например, [цена за единицу] * 0,75). Они добавляются в режиме Конструктора инструментом Поле ).

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

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

Подчиненная форма

Рис. 11.33. Подчиненная форма

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

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

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

Существует два основных интерактивных режима работы с отчетами:

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

Создать новый отчет можно следующими способами (рис. 11.34):

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

Создание – Отчеты

Рис. 11.34. СозданиеОтчеты

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

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

Группировка может быть:

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

Отчет в режиме Конструктора

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

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

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

Почтовые наклейки являются разновидностью отчета. Для их создания выполняется команда: Создание – Отчеты – Наклейки – выбрать источник и формат наклеек.

 
< Пред   СОДЕРЖАНИЕ     След >