Меню
Бесплатно
Главная  /  Осваиваем ПК  /  Технологии разработки и управления базами данных. Пособие Сохор И.Л Вычисления в запросах

Технологии разработки и управления базами данных. Пособие Сохор И.Л Вычисления в запросах

Технология разработки однотабличных форм для первого этапа загрузки базы данных

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

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

Рассмотрим технологию разработки однотабличной формы для ввода и корректировки данных на примере таблицы ВИД ПЕЧАТИ. В результате загрузки данных по видам печати формируются записи только таблицы ВИД ПЕЧАТИ (объект загрузки). Таблица ВИД ПЕЧАТИ не является подчиненной другим таблицам. Поэтому в процессе загрузки записей не устанавливаются связи с записями других таблиц. Таким образом, в подсхему для формы включается только одна таблица ВИД ПЕЧАТИ.

Определим структуру экранной формы, которую назовем ВИД ПЕЧАТИ. Форма ввода данных в таблицу ВИД ПЕЧАТИ должна содержать наряду с обычным реквизитом (описательным НП - наименование вида печати) большое поле ОП (описания вида печати) для размещения текста. Тип поля ОП - MEMO. Ключевой реквизит КП (код вида печати) в форму не помещается, так как он имеет тип `Счетчик" и наращивается автоматически для каждой новой записи.

Таким образом, структуру формы ВИД ПЕЧАТИ определяют:

тип формы - однотабличная (простая),

источник записей формы - таблица ВИД ПЕЧАТИ,

наличие, кроме обычного поля, большого поля для текста описания.

В области данных будут размещаться все реквизиты (за исключением уникального ключа) таблицы ВИД ПЕЧАТИ. Сконструированная экранная форма ввода/вывода для работы с данными таблицы ВИД ПЕЧАТИ представлена на Рис 3. Аналогично разработаны остальные экранные формы, соответствующие первому этапу загрузки: ФОРМА СОБСТВЕННОСТИ, СПЕЦИАЛЬНОСТЬ, ВИД ПЕЧАТНОЙ ОСНОВЫ, ВИД ПРОДУКЦИИ, УСЛУГА, ТИП ОРГАНИЗАЦИИ, СЫРЬЕ И ОБОРУДОВАНИЕ.

Рисунок 3 -- Форма ввода-вывода для работы с данными таблицы ВИД ПЕЧАТИ

Технология разработки форм для заполнения двух связанных таблиц (второй этап загрузки)

На втором этапе загрузки заполняются одновременно таблицы НАИМЕНОВАНИЕ ОРГАНИЗАЦИИ-РЕКВИЗИТЫ ОРГАНИЗАЦИИ и ГРУППА-СТУДЕНТ. Для заполнения таблиц второго этапа загрузки используются составные многотабличные формы.

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

После выполнения перечисленных пунктов осуществляется конструирование экранных форм средствами конкретной СУБД.

Рассмотрим технологию разработки на примере составной формы для одновременной загрузки и работы с данными двух таблиц - НАИМЕНОВАНИЕ ОРГАНИЗАЦИИ и РЕКВИЗИТЫ ОРГАНИЗАЦИИ (объект загрузки), которые связаны в схеме данных одно-многозначными отношениями.

Документами-источниками такой формы являются «Список организаций печати» и «Список организаций-поставщиков». С этих документов загружаются одновременно две таблицы: НАИМЕНОВАНИЕ ОРГАНИЗАЦИИ и РЕКВИЗИТЫ ОРГАНИЗАЦИИ.

Справочный материал к ЛР-1

Тема: «ТЕХНОЛОГИЯ РАЗРАБОТКИ БАЗ ДАННЫХ СРЕДСТВАМИ MICROSOFT ACCESS»

Занятие: Разработка таблиц и запросов

Технология разработки таблиц баз данных

Процесс создания таблиц баз данных можно подразделить на следующие этапы:

Разработка физической модели данных;

Создание таблицы с помощью Конструктора таблиц ;

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

Заполнение таблиц данными.

Разработка физической модели данных

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

Установить номенклатуру признаков описания объекта (состав и число полей);

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

Оформить результаты в табличном виде (таблица 1.1).

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



Таблица 1.1 – Таблица для описания характеристик полей БД

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

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

Включить компьютер и загрузить программное обеспечение Windows и Access;

После загрузки Access в появившемся диалоговом окне дважды щелкнуть кнопкой по меню Файл и выбрать команду Создать ;

В появившемся диалоговом окне Создание активизировать переключатель База данных , а затем щелкнуть мышью по кнопке ОК (рисунок 1.1);

Рисунок 1.1 – Диалоговое окно Создание базы данных

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

Рисунок 1.2 – Диалоговое окно указания имени и места файла БД

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

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

Конструктор таблиц (рисунок 1.3) содержит четыре информационных блока:

Имя поля;

Тип данных;

Описание;

Свойства поля.

Рисунок 1.3 – Окно Конструктора таблиц

В блоке Свойства поля имеется два окна (закладки): Общие и Подстановка .

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

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

Имя поля не должно начинаться с пробела;

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

Не допускается повторение имен в таблице;

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

Технология заполнения данных в строки информационных блоков Конструктора таблиц аналогична технологии работы с таблицами в текстовом редакторе Word.

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

Ввести имя поля;

Выбрать тип данных;

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

Задать свойства поля;

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

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

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

MEMO . Поле MEMO называют полем текстовых примечаний. Этот тип поля предназначен для ввода в него текстовой информации длиной более 255 символов (в Access 2000 – до 65 535 символов). Этот тип данных отличается от текстового тем, что в таблице хранятся не сами данные, а ссылки на блоки данных, которые хранятся отдельно. Это значительно ускоряет обработку таблиц. Поля MEMO не могут быть ключевыми или индексными.

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

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

Денежный . Этот тип данных аналогичен числовому. Отличается от него только характеристиками вводимых чисел. Точность числа не превышает четырех знаков после запятой. Целая часть может содержать до 15 десятичных разрядов. В конце числа могут быть проставлены обозначения валюты (р. или $).

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

Логический . Тип поля, параметры которого могут принимать только два значения, интерпретированные как ДА или НЕТ (Да/ Нет), Истина/Ложь, Включено/Выключено. Поля логического тина не могут быть ключевыми, но могут быть индексными.

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

Гиперссылка (Hyperlink) . Этот тип данных позволяет вставлять в поле гиперссылку, с помощью которой можно сослаться на любой файл или фрагмент файла, находящегося на том же компьютере, на котором находится таблица БД, или на любом компьютере в локальной сети или сети Интернет. Гиперссылка состоит из трех частей: адрес, указывающий путь к файлу; дополнительный адрес, указывающий положение фрагмента внутри файла или страницы текста; отображаемый текст. Каждая часть гиперссылки может содержать до 2048 символов.

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

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

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

В таблице 1.2 перечислены характеристики свойств полей, задаваемые в информационном блоке Свойства поля , Общие .

Таблица 1.2 – Характеристики свойств полей таблиц БД

Свойство поля Характеристика
Размер поля Устанавливает максимальный размер данных, вводимых в ячейки данного поля. Размер данных текстовых (символьных) полей не может превышать 255 знаков. Для числовых полей размер водимых данных устанавливается автоматически в зависимости от типа числа: байт – целые числа от 0 до 255 – 1 байт; целое – целые числа от -32 768 до +32 767 – 2 байт; длинное – целые числа от -2 147483 648 до +2 147483 648; целое с плавающей точкой с точностью до шести знаков – числа от -3,4 х 1038 до +3,4 х 1038 – 4 байт; целое с плавающей точкой с точностью до восьми знаков - числа от -1,797 х 10 308 до +1,797 х 10 308 -8 байт
Формат поля Для полей типа Текстовый и MEMO можно задавать формат ввода данных, в соответствии с которым данные будут выводиться на экран дисплея. Для полей типов Числовой, Денежный могут быть выбраны следующие форматы: стандартный – формат, устанавливаемый по умолчанию (отсутствуют разделители тысяч, знаки валют, число десятичных знаков соответствует точности числа); денежный – устанавливается два знака после запятой и выводится символ валюты; фиксированный – как минимум, один знак до запятой и два знака после запятой; с разделителями тысяч – два знака после запятой и разделитель тысяч; процентный – в конце числа выводится знак процента; экспоненциальный – числа выводятся в экспоненциальном виде (например, 1.10 ´ 103). Для полей типа Дата/Время существуют следующие форматы: полный формат даты – устанавливается по умолчанию и имеет, например, следующий вид: 15.04.97.05:30:10 РМ; длинный формат даты, например: Пятница, 13 апреля 1997; средний формат даты, например: 13-апр-97; краткий формат даты, например: 13.04.97; длинный формат времени, например: 14:33:10; средний формат времени, например: 14:33 РМ; краткий формат времени, например: 14:33. Для полей логического типа могут применяться следующие форматы: Да/Нет; Истина/Ложь; Вкл/Выкл
Число десятичных знаков (точность поля) Задается для полей типов Числовой и Денежный. Число знаков – от 0 до 15
Маска ввода Маска устанавливает шаблон для ввода данных в поля типов Текстовый, Числовой, Денежный, Дата/Время. Маска ввода для полей типа Дата/Время соответствует выбранному формату
Подпись поля Предназначена для более описательного названия поля, которое будет вводиться в заголовки («шапки») таблиц и другие элементы форм, отчетов. Если подпись поля не вводится, то в соответствующих элементах таблиц, форм и отчетов будут вводится имена полей
Условие на значение Устанавливает ограничения на значения вводимых данных. Например, задание условия «<100» для числового поля означает, что в это поле нельзя вводить данные более 100. Условие вида «Москва» OR «Вологда» OR «Новосибирск» означает, что вводимые названия городов должны быть только Москва, или Вологда, или.Новосибирск. Условия на значение вводимых данных задаются выражениями, состоящими из операторов сравнения, и значениями, которые используются для сравнения. При задании условий применяются известные операторы: < (меньше); <= (меньше или равно); > (больше); >= (больше или равно) При задании условий применяются известные операторы: = (равно); < > (не равно). В выражениях могут применяться логические операторы: OR (или), AND (и), а также операторы сравнения: BETWEEN, IN, LIKE: BETWEEN – проверяет, что введенное значение поля находится внутри заданного диапазона. Верхняя и нижняя границы диапазона разделяются логическим оператором AND. Например, выражение BETWEEN 20 AND 45 означает, что вводимое значение должно находиться в интервале от 20 до 45. Это выражение также может быть записано в виде: >50 AND < 100; IN – проверяет равенство введенного значения поля любому значению из заданного списка. Например, IN («Москва», «Вологда», «Новосибирск») означает, что это выражение соответствует также выражению «Москва» OR «Вологда» OR «Новосибирск»; LIKE – проверяет соответствие полей Текстовый или Мемо заданному шаблону символов. Например, выражение LIKE «Тех*» означает, что вводимая строка символов должна начинаться с символов «Тех»
Сообщение об ошибке Текст, который будет выводиться на экран при несоответствии заданным условиям значений вводимых данных
Обязательное поле Если поле выбрано обязательным, то это значит, что при заполнении таблицы в ячейки этого поля данные должны вводиться обязательно
Пустые строки Разрешение на ввод пустых строк для полей Текстовый и Мемо
Индексированное поле Рекомендуется устанавливать это значение для полей, по значениям которых предполагается осуществлять поиск данных в таблицах. Задание индекса значительно ускоряет поиск данных

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

Рисунок 1.4 - Пример заполнения свойств полей таблицы

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

При задании имени таблицы необходимо учесть следующие рекомендации:

Имя поля должно отражать содержание данных в таблице (класс объектов);

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

Имя таблицы не должно начинаться с пробела;

В одном файле БД не должно быть таблиц с одинаковыми именами.

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

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

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

1) открыть созданную ранее таблицу в режиме Конструктор ;

2) выделить поле, которое повторяется в другой таблице;

3) скопировать выделенное поле (со всеми его свойствами) в буфер обмена;

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

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

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

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

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

На панели инструментов окна базы данных активизировать команду (значок) Схема данных ;

В открывшееся окно построителя схемы данных ввести главную и подчиненные таблицы (рисунок 1.5);

Связать таблицы по одинаковому полю (рисунок 1.6) .

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

Рисунок 1.5 – Окно построителя схемы данных

Рисунок 1.6 – Пример установления связи «один ко многим»

На рисунке 1.7 показан пример схемы связи базы данных «Учебный процесс».

Рисунок 1.7 – Схема связи базы данных «Учебный процесс»

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

Технология ввода данных в таблицы производится двумя способами:

Непосредственным вводом данных в ячейки таблицы;

Организацией ввода данных через формы.

При выборе первого способа ввода данных необходимо руководствоваться:

Уменьшением вероятности ошибок оператора;

Удобством организации самого процесса ввода данных.

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

База данных (БД)

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

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

СУБД

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

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

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

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

Проектирование базы данных

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

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

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

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

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

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

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

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

СУБД MS Access

СУБД MS Access входит в состав Microsoft Office и предназначена для работы с реляционными БД, т.е. представленными в табличной форме. В отличие от табличного процессора Excel, Access имеет более развитые средства для отбора данных из взаимосвязанных таблиц, формирования новых таблиц и отчетов.

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

Достоинством Access является возможность создания СУБД (т.е. программы управления) без программирования. Однако, для сложных СУБД применение программирования на встроенном языке Visual Basic for Applications (VBA) позволяет повысить эффективность системы управления.

Таблицы

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

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

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

В реляционных моделях имеются следующие типы объектов:

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

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

Таблица

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

Реляционная таблица обладает следующими свойствами:

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

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

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

Преимущества реляционных моделей баз данных:

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

Недостатки реляционных моделей:

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

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

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

Создание таблицы в MS Access может быть выполнено:

  • в режиме Конструктора;
  • в режиме Таблицы;
  • на основе шаблона таблицы.

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

В базу данных будет добавлена новая таблица, созданная на основе выбранного шаблона таблицы.

Создание в режиме Таблицы путем ввода данных

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

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

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

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

Имя поля

В поле "Имя поля" вводится имя поля таблицы, являющееся его идентификатором .

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

Тип данных

В поле "Тип данных" выбирается один из доступных типов данных:

  • Текстовый - выбирается для полей с алфавитно-цифровыми данными , длиной не более 255 символов. По умолчанию устанавливается длина 50 символов .
  • Поле MEMO - следует использовать только в тех случаях, когда размер текста может превысить 255 символов или в тексте встречаются такие символы, как табуляция или возврат каретки . Длина этого поля составляет до 64 000 символов .
  • Числовой - выбирается для числовых данных. Причем, в свойстве размер поля необходимо определить точность значений данных и объем памяти . Чаще всего используются:
    • длинное целое, (от -2 147 483 648 до +2 147 483 647),
    • одинарное с плавающей точкой (числа с точностью до 7 значащих цифр в диапазоне от до),
    • действительное (позволяет хранить числа с заданной точностью от до).
  • Дата/время - используется для хранения календарных дат или значений времени и позволяет выполнять вычисления в единицах измерения времени: минутах, секундах, часах, днях, месяцах, годах.
  • Денежный - используется для хранения денежных значений, обеспечивает точность до 15 знаков слева от десятичной запятой и 4 знака справа . Если нужно хранить точные десятичные числа, не являющиеся денежными значениями, лучше задать числовой тип данных с размером поля действительное .
  • Счетчик - специально предназначен для автоматической генерации первичного ключа, т.е. полей, имеющих уникальные значения в каждой записи. Таблица не может содержать более одного поля с таким типом данных.
  • Логический - используется для хранения значений Истина (True) или Ложь (False).
  • Поле объекта OLE - позволяет хранить данные, содержащие графические объекты (рисунки, диаграммы), звуковые фрагменты, которые могут иметь динамические связи с другими приложениями Windows.
  • Гиперссылка - используется для хранения простых или сложных «ссылок» на внешний файл или документ.

Описание

Поле "Описание" содержит комментарии к создаваемому полю таблицы. Его заполнение не является обязательным.

Свойства поля

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

Общие свойства поля

  • Размер поля задает максимальный размер данных, сохраняемых в поле.
  • Формат поля задает формат отображения поля на экране или при печати.
  • Число десятичных знаков задает для числового или денежного типов данных число знаков после запятой.
  • Маска ввода определяет форму, в которой данные вводятся в поле (средство автоматизации ввода данных).
  • Подпись определяет название столбца таблицы для данного поля (если имя не указывается, то в качестве заголовка столбца используется имя поля).
  • Значение по умолчанию вводится в ячейки поля автоматически.
  • Условие на значение задает ограничения на вводимые значения и позволяет осуществлять контроль ввода.
  • Сообщение об ошибке задает текст сообщения выводимое на экран при нарушении условия на значение.
  • Обязательное поле определяет необходимость заполнения поля при вводе записей.
  • Индексированное поле используется для операций поиска и сортировки записей по значению, хранящемуся в данном поле, а также для автоматического исключения дублирования записей.
  • Смарт-теги задает теги действий, применимые к полю.
  • Выравнивание текста задает способ выравнивания текста в ячейки таблицы.

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

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

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

Упростить настройку "Подстановки" для поля позволяет Мастер подстановок .

Ключевые поля

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

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

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

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

Определение связей между таблицами в базе данных Access.

Схема данных

Схема данных

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

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

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

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

Типы связей

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

Отношение «один-ко-многим»

Отношение «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В отношении «один-ко-многим» каждой записи в таблице A могут соответствовать несколько записей в таблице B, но запись в таблице B не может иметь более одной соответствующей ей записи в таблице A.

Отношение «один-к-одному»

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

Отношение «многие-ко-многим»

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

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

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

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

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

Определение связей между таблицами

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

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

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

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

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

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

  1. Выберите одну или несколько таблиц или запросов и нажмите кнопку Добавить . По завершении добавления таблиц и запросов в окно "Схема данных" нажмите кнопку Закрыть .
  2. Перетащите поле (как правило, поле первичного ключа) из одной таблицы на общее поле (поле внешнего ключа) в другой таблице. Чтобы перетащить сразу несколько полей, нажмите клавишу CTRL и, удерживая ее нажатой, выделите каждое поле.

Откроется диалоговое окно Изменение связей .

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

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

  1. Нажмите кнопку Создать .

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

ПРИМЕЧАНИЯ

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

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

Когда открыто окно "Схема данных", на ленте доступны указанные ниже команды.

На вкладке Конструктор в группе Сервис

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

На вкладке Конструктор в группе Отношения

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

Ввод данных в таблицу

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

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

ЗАПРОСЫ

ЗАПРОС

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

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

Запросы отличаются от фильтров следующими свойствами:

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

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

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

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

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

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

  1. По результатам действий и особенностям выполнения запросы можно разделить следующим образом:
    • запросы на выборку , используемые для того, чтобы отобрать и представить в удобном виде данные из одной или нескольких таблиц (или запросов);
    • параметрические запросы , которые позволяют задавать конкретные условия отбора непосредственно при выполнении запроса;
    • перекрестные запросы , которые позволяют провести группировку и вычисления, а также представить данные в компактном виде, близком к сводной таблице Microsoft Excel;
    • запросы на изменение , которые позволяют изменять таблицы базы данных: обновлять их, дополнять новыми записями, удалять некоторые записи. Они могут использоваться для создания новых реальных таблиц, которые, в отличие от обычных выборок, в дальнейшем существуют уже независимо от тех таблиц базы данных, которые были использованы для их построения.
  2. По способу формирования запросы можно разделить на два вида:
    • запросы по образцу , или QBE-запросы (Query By Example), при создании которых необходимо указать параметры запроса в окне конструктора, задавая образцы для поиска информации;
      Система запроса по образцу выводит данные, имеющие отношение к вводимым. Запрос формируется путем заполнения бланка запроса в окне Конструктора запросов . Указываются критерии выборки записей в исходной таблице. С точки зрения пользователя, конструирование запроса - это просто пометка нужных элементов формы в окне Конструктора запросов.
    • структурированные запросы , или SQL-запросы (Structured Query Language), для создания которых необходимо описать запрос с помощью языка запросов SQL.
      С помощью структурированного языка формируются запросы любой сложности . Запрос составляется из последовательности SQL-инструкций , которые задают, что надо сделать с вводным набором данных для генерации выходного набора. Выбранную информацию с базы данных можно обработать с помощью специальных анализирующих функций (минимальные и максимальные значения, средние величины, суммы). Работа с SQL-запросом рассчитана на специалиста-программиста. Пользователю, как правило, не приходится обращаться к языку SQL напрямую
    В действительности любой запрос в Microsoft Access реализуется с помощью языка SQL. И хотя большинство запросов можно создавать в режиме конструктора, используя возможности запроса по образцу, каждый созданный запрос хранится в виде инструкции SQL. При создании запроса по образцу Microsoft Access автоматически формирует соответствующий SQL-запрос . Можно просмотреть инструкцию SQL для существующего запроса и внести в нее изменения. В этом случае автоматически будет обновляться определение соответствующего запроса по образцу в режиме конструктора.

Конструирование запросов

В MS Access запрос может быть создан

  • в режиме Мастера
  • в режиме Конструктора
  • в режиме SQL

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

Схема данных запроса

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

Бланк запроса по образцу

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

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

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

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

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

Этапы создания запроса

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

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

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

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

Новое имя: Старое имя поля

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

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

Условия отбора записей

Выражение, которое указывает, какие записи необходимо включить в динамическую таблицу при выполнении запроса вводится в строку Условие отбора для поля, по которому это условие необходимо проверить. Для задания условий отбора можно использовать операторы меньше (<), меньше или равно (<=), больше (>), больше или равно (>=), не равно (<>), равно (=), Like (выбор по маске), Between (между), In (в интервале), And (и), Or (или) и другие, а также имена объектов, константы и функции.
Завершение ввода условия выполняется нажатием клавиши Enter или просто переходом к другой ячейке бланка запроса с помощью клавиш управления курсором или мыши. Мicrosoft Access проводит синтаксический анализ заданного выражения.

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

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

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

Для создания сложных условий выбора данных используются логические операторы And и Or. Если условия отбора связаны оператором And, запись выбирается только в случае выполнения всех условий. Если же условия отбора связаны оператором Or, запись выбирается при выполнении хотя бы одного из всех условий. При определении нескольких условий отбора, связанных оператором And, для различных полей необходимо просто задать условие в строке Условие отбора для каждого из полей, образующих критерий выбора данных. Если же при определении нескольких условий поместить их в различные строки - строку Условие отбора и строку или - Microsoft Acces будет использовать Or-связь. В результате условия, расположенные в одной строке, связываются оператором And, в разных строках - оператором Or.

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

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

Константами являются не изменяющиеся значения, например, True, False, Да, Нет, Null (константы автоматически определяются в Access).

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

[Имя таблицы]![Имя поля]

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

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

Допускается использование операторов шаблона - звездочка * и вопросительный знак?.

Оператор Between позволяет задать интервал для числового значения.

Between 10 And 100 задает интервал от 10 до 100.

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

In ("Математика", "Информатика", "История")

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

Like "Иванов*"

Подстановочные символы:

Знак Описание Пример
* Соответствует любому количеству знаков. Может использоваться в качестве первого или последнего знака текстовой строки. wh* - поиск слов what, white и why.
? Соответствует любому текстовому знаку. B?ll - поиск слов Ball, Bell и Bill.
Соответствует любому одному знаку из заключенных в скобки. Bll - поиск слов Ball и Bell, но не Bill.
! Соответствует любому одному знаку, кроме заключенных в скобки. b[!ae]ll - поиск слов bill и bull, но не bell или ball.
- Соответствует любому знаку из диапазона. Необходимо указывать этот диапазон по возрастанию (от A до Z, но не от Z до A). bd - поиск слов bad, bbd и bcd.

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

Вычисления в запросах

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

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

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

[Имя таблицы]![Имя поля]

Имя вычисляемого поля выводится перед выражением и отделяется от него двоеточием

Имя_Нового_Поля:Правило_вычисления

Групповые операции

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

  • Sum вычисляет сумму всех значений заданного поля в каждой группе;
  • Avg вычисляет среднее арифметическое всех значений данного поля в каждой группе;
  • Min (Max ) возвращает наименьшее (наибольшее) значение, найденное в этом поле в каждой группе;
  • Count определяет количество записей в каждой группе и др.

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

Объединение данных

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

Между таблицами в бланке запроса отображаются связи, унаследованные из схемы данных. Но даже если связи не были созданы, то при добавлении в запрос двух таблиц может быть автоматически установлено их объединение. Для этого они должны иметь одноименные поля с одинаковым или совместимыми типом данных, а так же одно из полей должно быть ключевым. В это случае «1:∞» отображаться не будут, не включена проверка целостности данных. Автоматическая установка объединения таблиц в запросах работает при включенном параметре Разрешить объединение в секции Конструктор запросов раздела Конструкторы объектов диалогового окна Параметры Access. По умолчанию этот параметр включен.

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

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

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

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

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

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

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

В параметрическом запросе указывается критерий, который может изменяться по заказу пользователя. Такой запрос выгодно применять как основу для форм и отчетов. Например, в отчете появляется приглашение ввести месяц, за который он составлен. Условие отбора записей задается непосредственно при вызове запроса. При этом для внесения изменений не требуется открывать запрос в окне Конструктора (строка «Условие отбора»).

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

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

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

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

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

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

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

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

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

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

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

Существует четыре типа запросов на изменение.

  • На удаление записи. Запрос на удаление удаляет группу записей из одной или нескольких таблиц, удовлетворяющую условиям, определенным в запросе. Например, запрос на удаление позволяет удалить записи о товарах, поставки которых прекращены или на которые нет заказов. С помощью запроса на удаление можно удалять только всю запись , а не отдельные поля внутри нее. Если между таблицами установлена связь с обеспечением целостности данных с каскадным удалением записей, то создается запрос на удаление записей только из главной таблицы. В противном случае – сначала составляется запрос на удаление записей из подчиненной таблицы, а затем – из главной.
  • На обновление записи . Запрос на обновление вносит общие изменения в группу записей одной или нескольких таблиц, удовлетворяющих определённому условию. Запрос на обновление записей позволяет изменять данные в существующих таблицах . Первоначально Запрос на обновление создается как Запрос на выборку, а затем в окне конструктора запросов превращается в запрос на обновление с помощью кнопки Обновление на панели инструментов. После выполнения этой команды в бланке запроса появляется строка Обновление . Для отбора обновляемых записей надо включить в бланк запроса поля, требующие обновления, а также поля, по которым задаются условия отбора. Условия отбора записываются так же, как при создании запроса на выборку. Для обновляемого поля в строку Обновление надо ввести значение или выражение, определяющее новое значение поля . Выражение можно создать с помощью построителя выражений.
  • На добавление записей . Запрос на добавление добавляет группу записей из одной или нескольких таблиц в конец одной или нескольких таблиц. Например, появилось несколько новых клиентов, а также база данных, содержащая сведения о них. Чтобы не вводить все данные вручную, их можно добавить в таблицу «Клиенты». Добавляется только то, что было выбрано. С помощью запроса на добавление производится добавление записей из таблицы запроса в другую таблицу. Поэтому надо позаботиться, чтобы в запросе были сформированы записи с полями, соответствующими полям в другой таблице. Таблицы необязательно должны иметь одинаковую структуру, но требуется,чтобы типы полей одной таблицы строго соответствовали типам полей другой таблицы. В записи запроса может быть меньше полей, если на поля в таблице, куда добавляются записи, не наложено требование по обязательности их заполнения.
  • На создание таблицы . Запрос на создание таблицы создает новую таблицу на основе всех или части данных из одной или нескольких таблиц. Запрос на создание таблицы полезен при создании таблицы для экспорта в другие базы данных Microsoft Access или при создании архивной таблицы , содержащей старые записи. Запрос на создание таблицы используется для сохранения результата запроса. Этот запрос основан на запросе на выборку, но в отличие от него сохраняет таблицу с результатами запроса.

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

Действия запросов на изменение необратимы!

Формы

ФОРМА

Объект БД, позволяющий наглядно представлять данные и создавать удобный пользовательский интерфейс для работы с ними

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

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

Основные способы создания форм

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

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

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

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

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

Режимы работы с формами

Переключение между режимами осуществляется соответствующими командами меню.

Основные разделы бланка формы

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

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

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

  • присоединенные (связанные),
  • несвязанные,
  • вычисляемые.

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

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

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

  • Выбор объектов используется для выделения, изменения размеров, перемещения и редактирования элемента управления, по умолчанию нажата;
  • Поле используется для создания одноименного элемента управления, служащего для вывода текста, чисел, дат, вычисляемых выражений; этот элемент можно связать с одним из полей таблицы или запроса ;
  • Надпись используется для создания области текста;
  • Кнопка - элемент управления, с помощью которого можно активизировать функцию или макрос;
  • Гиперссылка ;
  • Разрыв страницы , Вкладка - элементы, позволяющие разделить информацию из источника записей на отдельные страницы (вкладки);
  • Группа переключателей используется для создания элементов управления (группы переключателей, флажков или выключателей);
  • Выключатель, Флажок, Переключатель - элементы управления, принимающие значение Да/Нет, которые можно связать с полем базовой таблицы (запроса) и/или использовать для организации диалога с пользователем;
  • Поле со списком, Список используются для создания элементов управления, содержащих список потенциальных значений, которые можно внести в строку свойства Источник строк или использовать подстановку из имеющейся таблицы или запроса;
  • Свободная / присоединенная рамка объекта , рисунок - средства для вставки в форму рисунка, рамок (связанных и свободных), рисования линий и прямоугольников;
  • Подчиненная форма/отчет для включения в данную форму информации из дополнительного источника. Как правило, в качестве подчиненной формы используется объект (форма, запрос, таблица), связанный с исходным. Поэтому в подчиненном объекте зачастую отражаются не все записи, а только соответствующие определенному значению некоторого поля главной формы.
  • Мастер помогает ввести свойства соответствующих элементов, по умолчанию включена.

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

При этом используются различные способы построения многотабличной формы:

  • явное включение подчиненной формы

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

  • вызов связанной формы по кнопке

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

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

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

ОТЧЕТ

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

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

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

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

Разработка отчетов

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

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

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

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

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

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

Составные части отчета

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

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

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

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

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


В режиме Предварительного просмотра

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

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

программа, состоящая из последовательности макрокоманд.

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

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

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

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

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

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

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

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

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

Формирование макрокоманд в окне макроса

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

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

После ввода всех макрокоманд в макрос его надо сохранить, воспользовавшись командой меню Файл/Сохранить или кнопкой панели инструментов макроса.

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

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

Преобразование макроса в код VBA

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

ПРИМЕЧАНИЕ.
Внедренные макросы невозможно преобразовать в код VBA.

Чтобы преобразовать макрос в код VBA, выполните указанные ниже действия:

  1. В области навигации щелкните макрос правой кнопкой мыши и выберите пункт "Конструктор".
  2. На вкладке в группе Сервис выберите команду Преобразовать макросы в Visual Basic .
  3. В диалоговом окне Преобразование макроса укажите, следует ли добавить в модуль VBA код обработки ошибок и комментарии, и нажмите кнопку Преобразовать .

Приложение Access подтвердит преобразование макроса и откроет редактор Visual Basic. Чтобы просмотреть модуль и внести в него изменения, дважды щелкните преобразованный макрос в области проекта.

МОДУЛЬ

Набор описаний и подпрограмм на языке Visual Basic для автоматизированной работы с БД.

Контрольные вопросы

  • Дайте определние понятиям "База данных", "Система управления базами данных".
  • Охарактеризуйте основные этапы проектирования БД.
  • Для чего предназначены таблицы БД?
  • Из скольких этапов состоит создание таблицы в Access?
  • Как формируется имя поля? В чем его отличие от заголовка поля в выходном документе?
  • Какие параметры таблицы могут быть заданы в режиме Конструктора?
  • Что такое простой (составной) ключ? Как они создаются?
  • Что такое схема данных? Перечислите доступные типы связей между таблицами?
  • Для чего предназначены запросы?
  • Какие типы запросов реализованы в Access?
  • Из каких частей состоит окно конструктора запроса?
  • Опишите способы заполнения первых двух строк полей бланка запроса.
  • Что такое условие отбора записей? Как его задать? Приведите примеры.
  • Каковы общие шаги технологий создания запросов на изменение?
  • В чем сходство и различие между таблицами БД и запросами?
  • Опишите технологию создания вычисляемых полей в запросе.
  • Что такое параметрический запрос? Каковы особенности его создания?
  • Что такое перекрестный запрос? Каковы особенности его создания?
  • Каково основное назначение форм при разработке СУБД?
  • Перечислите способы создания форм. Какой способ является оптимальным с точки зрения трудоемкости?
  • Сравните разработку форм с помощью Мастера и вручную. Опишите достоинства и недостатки этих технологий.
  • Что такое подчиненная форма? Как связаны между собой главная и подчиненная формы в схеме данных?
  • Что такое составная форма? Какова технология разработки составных форм?
  • Каково основное назначение отчетов?
  • Сравните назначение отчетов и назначение форм.
  • Как при работе с Мастером отчетов изменить группировку данных в отчете?
  • Какие разделы имеются в окне конструктора отчетов? Для чего они предназначены? Как добавить отсутствующие и удалить ненужные разделы?
  • Чем отличаются макросы в MS Access от макросов в MS Word и MS Excel?
  • В чем сходство и различие между макросами и модулями в Access?
  • Как организовать запуск макроса при открытии БД?

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

По дисциплине: МДК 02.02 "Технология разроботки и защита баз данных"
на тему «Технология разработки таблиц баз данных»Выполнил:
студент группы К-31
Кондратенко Е.В.
Проверил:
Преподаватель
Солодовникова О.А

Острогожск 2015

1. Введение

3. Построение реляционной модели
4. Нормализация
5. Проектирование базы данных в ACCESS
6. Создание SQL запросов
Список использованных источников

1. Введение

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

2. Построение концептуальной модели

Построение концептуальной модели представляет собой процесс моделирования смыслового наполнения базы данных. Концептуальная модель состоит из следующих трёх основных компонентов.
1. Сущности. Это элементы реального мира, которые могут существовать независимо. В моем случае сущностямиявляются: проект, детали, поставщики, заказ, служащие. Сущность представляется в концептуальной модели прямоугольником, в котором указано её имя.
2. Атрибуты. Атрибуты описывают сущность. Они представляются овалами с указанием имен, которые прикреплены к сущности. В моем случае проекту соответствуют: номер проекта. Деталям соответствуют: размер, номер детали, маркировка, название. Поставщикам соответствуют: ФИО,ИНН, адрес, идентификационный номер поставщика. Заказу соответствуют: номер заказа, номер проекта, номер деталей, идентификационный номер поставщика. Служащим соответствуют: ФИО, ИНН, должность.
3. Связи. Связь представляет взаимодействие между сущностями. На диаграмме она изображается ромбом, который соединяет сущности, участвующие в связи. В моем случае связь между проектом и служащими будет одинко многим, так как один проект может делать несколько служащих. Связь между служащими и заказом мы обозначим много ко многим, так как один служащий может делать много заказов. Связь между заказом и деталями мы обозначим много ко многим, так как много заказов могут быть на много деталей. Связь между заказом и поставщиками мы обозначим много ко многим, так как заказов может быть много и поставщиковтоже может быть несколько. Связь поставщики и детали мы обозначим много ко многим, так как несколько поставщиков могут поставлять разные детали. Связь детали и служащие мы обозначим, как много ко многим, так как служащие получают несколько типов деталей для каждого проекта. На рисунке 2.1 представлена концептуальная модель заданной базы данных.

Рисунок 2.1 – Концептуальная модель3. Построение реляционной модели

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

Проектирование базы данных и создание таблиц (5 ч)

Технология разработки таблиц баз данных

Процесс создания таблиц баз данных можно подразделить на следующие этапы:

Разработка физической модели данных;

Создание таблицы с помощью Конструктора таблиц;

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

Заполнение таблиц данными.

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

Установить номенклатуру признаков описания объекта (состав и число полей);

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

Оформить результаты в табличном виде.

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

Таблица для описания характеристик полей БД

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

Включить компьютер и загрузить программное обеспечение Windows и Access;

После загрузки Access в появившемся диалоговом окне дваж­ды щелкнуть кнопкой по меню Файл и выбрать команду Создать;

В появившемся диалоговом окне Создание активизировать переключатель База данных, а затем щелкнуть мышью по кнопке ОК;

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

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

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

Конструктор таблиц содержит четыре информационных блока:

Имя поля;

Тип данных;

Описание;

Свойства поля.

В блоке Свойства поля имеется два окна (закладки): Общие Подстановка.

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

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

Имя поля не должно начинаться с пробела;

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

Не допускается повторение имен в таблице;

Имена полей могут содержать до 255 символов. Имя следует задавать имя минимальным числом символов (это необходимо для минимизации объема памяти и времени поиска информации). Же­лательно, чтобы имя поля представляло аббревиатуру названия признака объекта, которое будет вводиться в ячейки поля.

Технология заполнения данных в строки информационных бло­ков Конструктора таблиц аналогична технологии работы с таблицами в текстовом редакторе WORD.

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

Ввести имя поля;

Выбрать тип данных;

Ввести в строку блока Описание характер вводимых значений в ячейку данного поля (в дальнейшем при заполнении таблицы этот комментарий выводится в стро­ку подсказки в нижней части экрана);

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

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

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

MEMO. Поле MEMO называют полем текстовых примечаний. Этот тип поля предназначен для ввода в него текстовой информа­ции длиной более 255 символов (в Access 2000 - до 65 535 симво­лов). Этот тип данных отличается от текстового тем, что в таблице хранятся не сами данные, а ссылки на блоки данных, которые хранятся отдельно. Это значительно ускоряет обработку таблиц. Поля MEMO не могут быть ключевыми или индексными.

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

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

Денежный. Этот тип данных аналогичен числовому. Отличается от него только характеристиками вводимых чисел. Точность числа не превышает четырех знаков после запятой. Целая часть может содержать до 15 десятичных разрядов. В конце числа могут быть проставлены обозначения валюты (р. или $).

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

Логический. Тип поля, параметры которого могут принимать только два значения, интерпретированные как ДА или НЕТ (Да/ Нет), Истина/Ложь, Включено/Выключено. Поля логического типа не могут быть ключевыми, но могут быть индексными.

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

Гиперссылка (Hyperlink). Этот тип данных позволяет вставлять в поле гиперссылку, с помощью которой можно сослаться на лю­бой файл или фрагмент файла, находящегося на том же компью­тере, на котором находится таблица БД, или на любом компью­тере в локальной сети или сети Интернет. Гиперссылка состоит из трех частей: адрес, указывающий путь к файлу; дополнительный адрес, указывающий положение фрагмента внутри файла или стра­ницы текста; отображаемый текст. Каждая часть гиперссылки мо­жет содержать до 2048 символов.

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

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

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

Имя таблицы. При задании имени таблицы необходимо учесть следующие рекомендации:

Имя поля должно отражать содержание данных в таблице (класс объектов);

В имени таблицы не должно быть знаков препинания, ско­бок, восклицательных знаков;

Имя таблицы не должно начинаться с пробела;

В одном файле БД не должно быть таблиц с одинаковыми именами.

2. Ключевое поле.

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

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

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

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

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

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

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

1) открыть созданную ранее таблицу в режиме Конструктор;

2) выделить поле, которое повторяется в другой таблице;

3) скопировать выделенное поле (со всеми его свойствами) буфер обмена;

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

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

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

Установление связей меж­ду таблицами необходимо для обеспечения целостности данных.

Целостность данных гарантирует защиту информации от слу­чайных изменений в связанных таблицах.

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

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

На панели инструментов окна базы данных активизировать команду (значок) Схема данных ;

В открывшееся окно построителя схемы данных вве­сти главную и подчиненные таблицы;

Связать таблицы по одинаковому полю.

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

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

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

4. Заполнение таблиц данными.

Технология ввода данных в табли­цы производится двумя способами:

Непосредственным вводом данных в ячейки таблицы;

Организацией ввода данных через формы.

При выборе первого способа ввода данных необходимо руко­водствоваться:

Уменьшением вероятности ошибок оператора;

Удобством организации самого процесса ввода данных.

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

5. Технология разработки запросов

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

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

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

На выполнение действий (на выборку);

Обновление;

Добавление;

Удаление;

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

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

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

Параметрические запросы - это запросы, параметры выбора информации в которых меняются.

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

Таблицы, структура которых соответствует исходной таблице (таблицам) БД;

Таблицы, структура которых отличается от исходной таблицы (таблиц) БД, - так называемые кросс таблицы.

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

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