Редактирование структуры таблицы
О.А. Карасева
Базы данных
Методические указания
по выполнению вводного лабораторно-практического цикла в СУБД Access
для студентов очного отделения
специальности 351400 -Прикладная информатика
ЕКАТЕРИНБУРГ
Введение
Данные методические указания предназначены для приобретения основных навыков работы с системой управления базами данных (СУБД) Microsoft ACCESS.
Основные понятия
Microsoft ACCESS является реляционной системой управления базами данных.
Запросы и выборки. Работа с базой данных предполагает сортировку данных и их выбор по определенному критерию. Эти операции выполняются по запросу. Результат запроса называется выборкой. Данные в выборке являются динамическими: они всегда соответствуют текущему состоянию таблицы.
Отчеты и элементы управления. При запросе отобранные данные представляются в виде таблицы. Для более наглядной формы представления информации существуют отчеты. Отчет может содержать простую информацию и сложные вычисления, а также данные могут отображаться в виде диаграмм и графиков. В качестве элементов управления можно использовать поля данных, результаты вычислений, поясняющий текст, диаграммы или графики.
Формы данных. В ACCESS имеется две возможности ввода и редактирования информации: непосредственно в таблицах данных или с помощью специально разработанных форм. Наглядность представления форм облегчает работу с данными.
Макросы, модули и объекты. При помощи макросов можно автоматизировать отдельные действия, не погружаясь в программирование. Запись макросов происходит по принципу магнитофона: отдельные действия, необходимые для определенной операции, записываются в нужной последовательности, а затем воспроизводятся любое количество раз простым нажатием кнопки. Например, для перехода к форме при открытии базы данных можно использовать специальный макрос. Тогда при открытии соответствующей базы данных на экране будет появляться форма. Макросы могут не вполне удовлетворять вашим требованиям. В этом случае можно воспользоваться языком программирования VBA. Процедуры, написанные на VBA, записываются в модули. Все элементы, которые вы формируете, являются объектами для ACCESS.
Мастера. Мастера выполняют нужные действия. Работа с ними проста, надежна и эффективна.
Конструкторы. Это инструмент, который облегчает выполнение некоторого задания. Крайне полезным является Конструктор выражений - он позволяет быстро сформировать нужное выражение. С помощью конструктора запросов легко формируются запросы.
Вся работа с базами данных основывается на работе с таблицами. На основе данных, хранящихся в таблицах, строятся формы, запросы и отчеты.
Создание базы данных
После запуска ACCESS на экране появится окно приложения, предоставляющее возможность создания новой базы данных или открытие уже существующей. Можно изменить папку и диск, в которые будет записана новая база данных, воспользовавшись списком папок и дисков. Закончив определение пути и имени базы данных, щелкните по кнопке ОК.
Работа с таблицами
Для создания таблицы нажмите на кнопку Создать в окне базы данных или раскройте меню Файл и выберите команду Новый объект, а в раскрывшемся подменю выберите команду Таблица.
На экране появится диалоговое окно Создание таблицы. Теперь необходимо определить, как создавать таблицу: с помощью мастера форм или самостоятельно. Если вы не знакомы с ACCESS, рекомендуем воспользоваться Мастером таблиц. Если вы хотите создать совершенно особенную, не похожую на имеющиеся образцы таблицу, и хорошо знаете, что вам нужно для этого сделать, лучше взяться за дело самостоятельно.
Мастер таблиц
Мастер таблиц имеет две категории таблиц-образцов: для делового применения и для личного применения. Вы можете выбрать одну из категорий, нажав соответствующий переключатель в нижней части диалогового окна.
Каждый из образцов содержит большое количество самых разнообразных полей, некоторые из которых могут пригодиться для вашей таблицы.
Из списка имеющихся полей следует выбрать те, которые вы хотите использовать для своей таблицы, и добавить их в список Поля новой таблицы. Для этой цели предназначены четыре кнопки:
> выделенное в настоящий момент поле становится следующим полем в проектируемой таблице;
>> все поля выбранной за образец таблицы переносятся в проектируемую за один раз;
< убирает выделенное поле из правого списка полей проектируемой таблицы;
<< отменяет выбор всех полей.
Вы можете поместить в проектируемую таблицу поля из нескольких таблиц-образцов.
Закончив составление списка полей, нажмите кнопку Далее. Мастер таблиц запросит имя для новой таблицы. Задайте имя.
Определите имя первичного ключа, который должен присутствовать в каждой таблице и нажмите кнопку Далее. Мастер готов завершить формирование новой таблицы.
Теперь предстоит выбрать, что вы хотите делать дальше:
* изменить структуру новой таблицы (добавить, удалить или переименовать поля, изменить их последовательность);
* приступить к непосредственному вводу данных в готовую таблицу;
* создать специальную форму для ввода, которая позволит осуществить удобный ввод данных. Если вы хотите при этом воспользоваться на следующих этапах подсказкой, установите соответствующий флажок в нижней части диалогового окна.
Нажмите на кнопку Готово. Мастер сформирует таблицу, и вы сможете приступить к вводу данных.
Самостоятельное формирование таблицы
В окне базы данных откройте панель Таблица и нажмите кнопку Создать. На экране появится диалоговое окно Создание таблицы. Нажмите кнопку Конструктор. На экране появится пустое окно конструирования таблицы. Структура этого окна приведена на рис.1.
Задание имени поля. В столбце Поле указываются имена соответствующих полей (не более 64 знаков). В имени поля допустимы все специальные знаки, кроме точки, восклицательного знака, угловых скобок.
Определение типа данных. Тип данных можно выбрать из раскрывающегося списка столбца Тип данных.
Определение дополнительных свойств полей. Указание свойств производится в нижней части окна конструирования таблицы.
Вы можете определить следующие свойства полей:
* размер поля: определяется максимальная длина текстового поля в знаках или тип данных числового поля;
* формат: определяется формат отображения данных;
* десятичные разряды: число разрядов справа от десятичного разделителя;
* входной формат: определяется образец для всех данных, которые вводятся в это поле, позволяет контролировать правильность данных при вводе;
* подпись поля: определяется обозначение для поля, которое должно быть распечатано в форме и отчете (по умолчанию за основу будет взято имя поля);
* значение по умолчанию: определяется значение по умолчанию, которое автоматически вводится в поле при формировании новой записи;
* условие на значение: определяется выражение, которое устанавливает ограничение значения при вводе данных, позволяет контролировать правильность данных при вводе;
* сообщение об ошибке: определяется сообщение об ошибке, появляющееся при нарушении условия, определенного в условии на значение;
* обязательное поле: определяется, обязательно ли вводить данные в соответствующее поле или оно может остаться пустым;
* индексированное поле: определяется, надо ли индексировать поле для ускорения операции поиска и сортировки. Индекс ускоряет поиск и сортировку данных, однако обновление данных при внесении изменений замедляется.
Рис. 1. Окно конструктора таблиц
Поиск и замена записей
Поиск данных
Войдите в меню Правка и выберите команду Найти или нажмите кнопку с изображением бинокля. На экране появится диалоговое окно.
В поле Образец укажите последовательность знаков для поиска. Для расширения возможностей поиска можно использовать символ шаблона (* или ?).
В раскрывшемся списке Совпадение выберите метод:
* С любой частью поля : программа ищет любое вхождение указанной последовательности знаков в поле данных. Если вы ищете “стол”, то найдете как “столб”, так и “престол”. “Остолбенеть”.
* Поля целиком: программа сообщает о вхождении указанной последовательности знаков только в том случае, когда она совпадает с содержимым всего поля.
* С начала поля: программа сообщает о вхождении указанной последовательности знаков только в том случае, когда она находится в начале поля.
В диалоговом окне Просмотр можно выбрать :
* Все поля: исследуется вся таблица (все поля всех записей). Поиск может быть продолжительным.
В группе Направление поиска выберите нужный переключатель:
* Вверх: поиск происходит от текущей записи до первой.
* Вниз: поиск происходит от текущей записи до последней.
* Все: исследуется вся таблица (все поля всех записей). Поиск может быть продолжительным.
Можно использовать флажок С учетом регистра символов. В этом случае программа будет различать строчные и прописные буквы.
Нажмите кнопку Первое вхождение. После того как будет найдена нужная запись, для продолжения поиска нажмите кнопку Поиск далее. Чтобы прекратить поиск, нажмите кнопку Закрыть.
Замена данных
Для замены данных войдите в меню Правка и выберите команду Заменить. На экране появится диалоговое окно.
В области Образец укажите образец заменяемого текста. Для расширения возможностей поиска можно использовать символы шаблона (* или ?). В поле Заменить на укажите текст замены. Если вы хотите сравнивать образец с содержимым всего поля, установите соответствующий флажок. Прочие параметры совпадают с параметрами окна Поиск.
Кнопка Поиск далее задает поиск следующего вхождения без замены найденного вхождения. Кнопка Заменить производит замену и ищет следующее появление соответствующей последовательности знаков.
Кнопка Заменить все производит автоматическую замену во всех случаях, не требуя предварительного подтверждения. Нажмите на кнопку Закрыть для завершения замены.
Связи между таблицами
ACCESS представляет собой реляционную базу данных. Преимущество реляционных баз состоит в том, что вы можете хранить специфически сгруппированные данные в разных таблицах и задавать связи между этими таблицами, соединяющие их в единую базу. При работе с запросами, формами и отчетами, которые базируются на данных нескольких таблиц, ACCESS будет использовать установленные связи.
Чтобы связать таблицы друг с другом, войдите в меню Сервис и выберите команду Схема данных. Если вы не создавали ранее схемы данных, то на экране сначала появится диалоговое окно Добавление таблицы. Выберите таблицы и запросы базы данных (сейчас это таблицы), которые вы хотите связать друг с другом.
В списке находятся все таблицы текущей базы данных. Выделите первую таблицу из тех, которые вы хотите связать друг с другом, и нажмите кнопку Добавить. Проделайте это для всех связываемых таблиц и нажмите кнопку Закрыть. Вы попадете в окно Схема данных, в котором находятся теперь все выбранные вами таблицы. Внизу приведены все поля, которые содержатся в таблице.
Если вы захотите добавить в окно Схема данных другие таблицы, используйте инструмент Добавить таблицу или соответствующую команду в меню Связи.
Вы можете добавить таблицы непосредственно с помощью перетаскивания их мышью с панели таблиц окна базы данных в окно схем. Метод перетаскивания применим при условии, что оба окна открыты параллельно. Можно для удобства использовать команду Мозаикав меню Окно.
В таблицах жирным шрифтом выделены названия полей с первичным ключом. Для формирования связей между таблицами необходимо переместить поле из одной таблицы на поле другой. Поля, для которых вы устанавливаете связи, должно содержать общую информацию, быть общим полем, которое имеется в обеих таблицах. Эти поля необязательно должны иметь одинаковые названия, но совершенно необходимо, чтобы совпадали типы данных и размеры этих полей.
Пример связывания двух таблиц: Модели автомобилей и Клиенты приведен на рис.2.
После перетаскивания поля первой таблицы на поле второй появляется диалоговое окно Связи. В этом окне имеется список с двумя столбцами: Таблица/запрос и связанная Таблица/запрос. Левая таблица-главная.
Рис. 2. Окно установления связей между таблицами
Главной становится та таблица, из которой вы перетаскиваете поле, подчиненной - та таблица, куда вы его перетаскивали. Одна и та же таблица может выступать в одной связи как главная, а в другой - как подчиненная.
Очень важно правильно понимать, в чем заключается разница между главной и подчиненной таблицами. С точки зрения сопоставления и поиска данных двух таблиц никакой разницы нет. Различие состоит только в том, как система управления данными будет обеспечивать целостность данных при изменении значений в связующих таблицах при изменении значений в связующих полях или при удалении записей из связанных таблиц. Как правило, хотя бы в одной таблице связующее поле является первичным ключом и однозначно определяет запись в этой таблице. Такая таблица и является кандидатом в главные. Если во второй таблице связующее поле не является однозначно характеризующим запись полем, то эта таблица не может быть главной, а может выступать только в качестве подчиненной.
Тип отношения определяет тип отношения связанных таблиц. Различаются два типа отношений: “один к одному” и “один ко многим”.
При отношении “один к одному” каждая запись данных главной таблицы соотносится ровно с одной записью связанной таблицы. Как правило, в этом случае первичный ключ одной таблицы связывается с первичным ключом другой. Отношение “один ко многим ” означает, что каждая запись данных одной таблицы может быть связана с любым числом записей другой таблицы. Как правило, в этом случае первичный ключ одной таблицы связывается с полем другой таблицы, не являющимся первичным ключом, и это поле может содержать повторяющиеся данные.
Под списком с двумя таблицами расположен флажок Наследование связи. Этот флажок используется для формирования отношения в текущей базе данных для двух присоединенных внешних таблиц, хранящихся в другой базе данных. Если этот флажок будет снят, устанавливаемая связь будет действительна только для текущей базы данных, но не для той базы данных, в которой хранятся таблицы.
Если вы хотите, чтобы ACCESS поддерживал целостность связей между двумя таблицами, установите флажок Обеспечение целостности данных. К нарушению целостности данных приводят следующие действия:
* добавление таких записей данных в рабочую таблицу, для которых отсутствует соответствующая первичная запись данных;
* изменение в поле связи в главной таблице, следствием которых будет нарушение связи с записями данных в рабочей таблице;
* удаление записи данных в главной таблице, если имеются связанные с ней записи, что приводит к появлению “осиротевших” записей.
Между двумя таблицами может быть сформирована только одна связь. Если вы определите вторую связь, то она заменит уже существующую.
В нижней части диалогового окна Связи находятся два флажка, связанных с обеспечением целостности: Каскадное обновление связанных полей и Каскадное удаление связанных полей. Установите оба эти флажка. В этом случае ACCESS позволит производить изменения и удаление записей данных главной таблицы. Одновременно будут изменены (или удалены) связанные с ними записи подчиненной рабочей таблицы. Это означает, что правила целостности, будут сохранены даже при изменении значений в связующих полях.
Кнопка Объединение.
В ACCESS имеются следующие варианты объединения данных связанных таблиц:
1. Объединение при совпадении: принимаются во внимание записи данных, у которых совпадает содержимое связанных полей таблицы.
2. Объединение с левым включением: из левой таблицы учитываются все записи данных независимо от того, имеются или нет совпадающие значения в соответствующих полях связанной таблицы. Из правой таблицы принимаются во внимание только те записи, для которых содержимое связанных полей совпадает с содержимым главной таблицы.
3. Объединение с правым включением: из правой таблицы учитываются все записи данных независимо от того, имеются или нет совпадающие значения в соответствующих полях связанной таблицы. Из левой таблицы берутся только те записи, для которых содержимое связанных полей совпадает с содержимым рабочей таблицы.
Теперь, когда все параметры связи между таблицами определены, осталось лишь создать реляционное отношение (связь) между таблицами. Для этого нажмите кнопку Создать в окне Связи. После создания связи вы окажетесь в окне Схема данных, где связь между таблицами представлена линией между связующими полями.
В заключение сохраните структуру окна Схема данных . Для этого войдите в меню Файл и выберите команду Сохранить макет. Далее выполните команду Закрыть в меню Файл. Вы вернетесь в окно базы данных.
Лабораторная работа 1
Цель работы: создание базы данных “Автомобили”, таблиц базы данных “Автомобили”.
Постановка задачи
Представьте себе, что вы являетесь управляющим склада фирмы, торгующей автомобилями. Перед вами стоит задача собрать всю информацию об ассортименте продукции и всех клиентах фирмы. Сюда относятся адреса клиентов, их заказы, информация о марках автомобилей, включая цену.
Необходимо создать таблицу, включающую информацию обо всех поставляемых моделях автомобилей, а затем таблицу с адресами и заказами клиентов.
Задание к лабораторной работе 1
Создание базы данных
Запустите приложение ACCESS и выберите режим создания новой базы данных и укажите путь. Назовите ее «Автомобили».
Проектирование таблицы «Модели автомобилей».
В окне базы данных выберите вкладку Таблица и нажмите кнопку Создать. Выполните создание таблицы самостоятельно, для этого воспользуйтесь Конструктором (см. рис. 1).
В верхней части диалогового окна Создание таблицы задайте все поля, которые должна содержать таблица, а в нижней - определите необходимые свойства.
Определим свойства полей таблицы.
1. Код модели
имя поля | Код модели |
тип данных | текстовый |
размер поля | |
обязательное поле | да |
пустые строки | нет |
индексированное поле | да (совпадения не допускаются) |
2. Модель
имя поля | модель |
тип данных | текстовый |
размер поля | |
индексированное поле | да (совпадения допускаются) |
3.Мощность двигателя
имя поля | мощность двигателя |
тип данных | текстовый |
размер поля |
4. Цвет
имя поля | цвет |
тип данных | текстовый |
размер поля |
5. Число дверей
имя поля | число дверей |
тип данных | числовой |
размер поля | байт |
формат | основной |
число десятичных разрядов | |
Значение по умолчанию | |
условие на значение | 2 OR 4 |
сообщение об ошибке | это поле может содержать только 2 или 4 |
6. Коробка передач
имя поля | коробка передач |
тип данных | текстовый |
размер поля | |
значение по умолчанию | ручная |
условие на значение | «ручная» OR «автоматическая» |
сообщение об ошибке | это поле может содержать только “ручная” или “автоматическая” |
7.Обивка
имя поля | обивка |
тип данных | текстовый |
размер поля |
8. Прочее оснащение
имя поля | прочее оснащение |
тип данных | мемо |
9. Заводская цена
имя поля | заводская цена |
тип данных | денежный |
десятичные разряды | авто |
10. Транспортные издержки
имя поля | транспортные издержки |
тип данных | денежный |
формат | денежный |
десятичные разряды | авто |
11. Предпродажная подготовка
имя поля | предпродажная подготовка |
тип данных | денежный |
десятичные разряды | авто |
Значение по умолчанию |
12. Специальная модель
имя поля | специальная модель |
тип данных | логический |
формат | Да / Нет |
Назначение первичного ключа
В качестве первичного ключа подходит поле Код модели :
* щелкните по полю Код модели;
* выберите на панели инструмент Ключ или команду Ключевое поле в меню Правка. В левой части описания поля на маркере строки появится изображение ключа - признак того, что данное поле является первичным ключом.
Внимательно отнеситесь к выбору первичного ключа. После того как вы установите связи различных таблиц (обычно это делается с использованием первичного ключа), будет практически невозможно изменить выбор первичного ключа.
Лабораторная работа 2
Цель работы: ввод и редактирование записей данных. Установление связей между таблицами.
Добавление записей данных
Откройте таблицу Модели автомобилей в окне базы данных, выделив таблицу и нажав кнопку Открыть. Если таблица уже открыта, но вы находитесь в окне конструирования таблицы, воспользуйтесь инструментом Режим таблицы на панели инструментов или войдите в меню Вид и выберите команду Таблица. ACCESS откроет таблицу в режиме заполнения. В этом режиме каждая строка представляет собой отдельную запись, а столбцы соответствуют полям записи. Имена полей образуют заголовки столбцов.
Переход от одного поля к другому осуществляется нажатием клавиши Tab. Переход от одной записи к другой осуществляется нажатием клавиши , ¯.
Обратите внимание, что в полях, для которых определено стандартное значение по умолчанию, сразу же появляются соответствующие значения. Если вы хотите изменить эти значения, то вы можете легко это сделать, переписав заново их значение.
Введите следующие записи данных (название модели можно изменить на свое):
код модели | |
модель | Classic Combi |
мощность двигателя | 53/75 |
цвет | красный торнадо |
число дверей | |
коробка передач | ручная |
обивка | ткань |
прочее оснащение | автомагнитола, раздвижная крыша |
заводская цена | 350 700р. |
транспортные издержки | 9 500р. |
предпродажная подготовка | 10 500р. |
специальная модель | нет |
2.
код модели | |
модель | Вольво |
мощность двигателя | 69/90 |
цвет | бутылочное стекло |
число дверей | |
коробка передач | автоматическая |
обивка | ткань |
прочее оснащение | автомагнитола, раздвижная крыша, покрытие “металлик” |
заводская цена | 390 200р. |
транспортные издержки | 10 200р. |
предпродажная подготовка | 10 500р. |
специальная модель | нет |
3.
код модели | |
модель | BMW |
мощность двигателя | 100/139 |
цвет | черный |
число дверей | |
коробка передач | ручная |
обивка | кожа |
прочее оснащение | автомагнитола, раздвижная крыша, покрытие “металлик”, алюминиевые дворники, электроподъемник окон |
заводская цена | 410 100р. |
транспортные издержки | 9 750р. |
предпродажная подготовка | 10 500р. |
специальная модель | да |
4.
код модели | |
модель | Жигули 99 |
мощность двигателя | 90/135 |
цвет | голубой |
число дверей | |
коробка передач | ручная |
обивка | велюр |
прочее оснащение | раздвижная крыша, электроподъемник окон |
заводская цена | 170 900р. |
транспортные издержки | 10 500р. |
предпродажная подготовка | 10 500р. |
специальная модель | да |
5.
код модели | |
модель | Тайота |
мощность двигателя | 90/60 |
цвет | антрацит |
число дверей | |
коробка передач | автоматическая |
обивка | ткань |
прочее оснащение | раздвижная крыша, электроподъемник окон, навесной багажник |
заводская цена | 460 200р. |
транспортные издержки | 11 000р. |
предпродажная подготовка | 10 500р. |
специальная модель | нет |
При следующем открытии таблицы вы увидите, что ACCESS сортирует записи по полю первичного ключа, т.е. по Коду модели.
Введите в таблицу Клиенты и заказы соответствующие данные. Заполните таблицу произвольными адресами, телефонами и фамилиями. В отношении поля Код модели следует быть осторожнее: эти коды должны в точности совпадать с введенными ранее кодами из таблицы Моделей автомобилей.
Поле Скидка задает процент скидки для особо надежных и выгодных клиентов. Для скидки в 10% введите число 0.1 и т.д.
Установление связей между таблицами
Обе таблицы имеют связующие поля (а именно, поле Код модели).
Чтобы создать связь между таблицами Модели автомобилей и Клиенты и заказы, выполните следующие действия:
* В окне базы данных войдите в меню Сервис и выберите команду Схема данных.
* Выберите таблицу Модели автомобилей и нажмите кнопку Добавить.
* Выберите таблицу Клиенты и заказы и нажмите кнопку Добавить.
* Нажмите кнопку Закрыть и вы окажетесь в окне Схема данных.
Главной таблицей следует выбрать таблицу Модели автомобилей, поскольку именно в ней связующее поле является первичным ключом, а таблицу Клиенты и заказы сделать подчиненной.
В качестве связующего поля следует выбрать Код модели. Название этого поля выделено в таблице Модели автомобилей - признак того, что оно является в этой таблице ключом. Подведите курсор мыши к полю Код модели в таблице моделей, нажмите левую кнопку мыши и, удерживая ее, переместите его на поле Код модели таблицы клиентов, а затем отпустите кнопку мыши.
На экране появится диалоговое окно Связи (см. рис. 2), которое служит для установления связи и определения ее типа:
* Установите флажок Обеспечение целостности связи.
* Выберите тип отношений Один ко многим.
* Установите флажок Каскадное обновление связанных полей.
* Нажмите кнопку Создать, и связь будет установлена.
* Сделайте двойной щелчок по кнопке системного меню (или выберите в меню Файл команду Закрыть и диалоговое окно закроется. Таблицы связаны друг с другом.
Чтобы закончить работу, войдите в меню Файл, выберите команду Закрыть. При этом ACCESS автоматически сохранит на диске все записи данных.
Лабораторная работа 3
Цель работы: составление запросов на примере задачи «Торговля автомобилями».
С помощью запросов пользователь может получить ответы на интересующие его вопросы на основе информации, имеющейся в базе данных. Примеры таких вопросов: “Как идет продажа автомобилей модели N?” или “Кто из наших клиентов живет в Екатеринбурге?”. Запросы такого вида называются запросами на выбор.
После выполнения запроса его результат представляется в виде динамической таблицы - выборки. После закрытия запроса выборка больше не существует. Тем не менее данные, представленные в выборке, по-прежнему хранятся в соответствующих таблицах, и изменения этих данных, если они имели место, отражены в исходных таблицах базы данных.
Запросы можно разделить на группы.
Чаще всего используются стандартные запросы выбора, используемые для того, чтобы отобрать и представить в виде удобной динамической таблицы данные из таблиц БД.
Запросы на выполнение действия используются для создания новых реальных таблиц данных в отличие от обычных выборок (динамических таблиц), в дальнейшем существующих уже независимо от тех таблиц базы, которые были использованы для их построения.
Перекрестные запросы позволяют представить данные в весьма наглядной компактной форме сводных кросс-таблиц, осуществляя при этом разнообразную группировку записей и групповые вычисления при обработке данных.
Параметрические запросы позволяют настраивать запрос непосредственно при его выполнении- пользователь вводит параметры настройки запроса с помощью диалоговых окон. Они могут быть как запросами выбора, так и запросами сводных кросс-таблиц и запросами на выполнение действия.
Запросы на выбор
Основной тип запросов по образцу –это запросы на выбор. Для формирования запроса выберите вкладку запросов, нажмите кнопку Создать. На экране появится диалоговое окно Новый Запрос.
Запрос можно формировать самостоятельно с помощью кнопки Конструктор или обратиться к Мастеру запросов.
Мастер запросов
1. Простой запрос.
2. Перекрестный запрос представляет собой данные в виде сводной таблицы (или кросс-таблицы). Заголовками столбцов и строк служат не имена полей, а значения выбранных полей или выражения. В ячейках такой таблицы расположены сводные результаты, относящиеся к указанным в заголовках строк и столбцов значениям.
3. Поиск повторяющихся записей. Такие запросы могут помочь при удалении из таблиц дублирующих друг друга записей, т.к. часто, например, название одной и той же фирмы в различных справочниках может быть написано по-разному.
4. Поиск записей, не имеющих подчиненных (не связанных) записей. Такие «осиротевшие» записи являются объектом для изучения.
Самостоятельное формирование запросов
Как правило, к этому приходится прибегать, когда в основу запроса нужно положить несколько таблиц БД с установлением связей между ними. Для создания запроса:
· Откройте вкладку Запросы.
· Нажмите кнопку Создать.
· Нажмите кнопку Конструктор. Одновременно поверх него появится диалоговое окно Добавление таблицы.
· Выберите таблицы БД, которые будут использоваться для запроса. Это можно сделать, выделяя нужные таблицы и нажимая кнопку Добавить или просто сделав двойной щелчок по именам нужных таблиц.
· Завершив отбор таблиц, закройте диалог, нажав кнопку Закрыть.
· Если в основе запроса находятся несколько таблиц, необходимо установить между ними связи, иначе вы не сможете совместно использовать эти таблицы.
Связь между таблицами графически представляется на экране линией связи. Для создания связей между таблицами перетащите с помощью мыши поле из одной таблицы на поле того же типа данных из другой таблицы.
· Заполните столбцы в окне конструирования запросов. Предположим, вы хотите добавить к запросу несколько полей из разных таблиц. Для этого необходимо поместить поля из списков полей таблиц в верхней части окна в нижнюю область конструирования запроса по образцу, поместив их в отдельные столбцы области конструирования запроса. Это можно сделать тремя способами:
1. Перетащить их.
2. Выбрать нужное поле двойным щелчком в списке полей соответствующей таблицы (оно будет помещено в следующий столбец).
3. Выбрать его из раскрывающегося списка строки Поле в нижней половине окна в области конструирования.
Ввод условий отбора
Условия отбора – это указания пользователя, описывающие, какие именно записи данных должны быть представлены в выборке. Вы можете задать условия отбора для одного или нескольких полей запроса ( рис. 3).
Рис. 3. Окно конструирования запроса
В области конструирования запроса сделайте щелчок в ячейке строки Условие Отбора для поля, по которому вы хотите определить это условие. Далее введите выражение для соответствующего условия отбора и нажмите клавишу Enter.
Внимание! Если выражение не содержит никакого знака отношения, ACCESS будет исходить из того, что вы подразумеваете знак «=».
Вы можете задать несколько условий отбора. При определении нескольких условий отбора для одного поля вы можете использовать операторы AND (И) или OR(ИЛИ).
AND (И) – связь условий:
Записи должны удовлетворять одновременно всем условиям отбора, связанным оператором AND. Например, вы хотите выбрать данные, которые удовлетворяют одновременно условиям:
“Клиент живет в Екатеринбурге” и при этом обязательно “За последние две недели клиент должен был сделать как минимум один заказ”. Условия отбора будут выглядеть так:
ГОРОД=”Екатеринбург”
AND
ДАТА ЗАКАЗА >DATE() – 14
Оператор OR(ИЛИ)- связь условий
Записи данных должны удовлетворять хотя бы одному из нескольких условий отбора.
Внимание! В случае заполнения условий отбора для нескольких полей таблицы условия, расположенные в одной строке, связываются оператором AND; условия, расположенные в различных строках, связываются оператором OR
.
Конструктор выражений
Формировать условия можно с помощью конструктора выражений. Вместо того, чтобы вручную вводить все выражение в строку Условие отбора, или строку OR , можно быстро собрать его из отдельных составных частей. Для этого:
· В области конструирования активизируйте ячейку строки Условие отбора поля, для которого вы хотите определить выражение.
· Запустите Конструктор (Построитель) выражений, выбрав на панели инструментов кнопку Построить (с изображением трех точек) или выбрав команду Построить контекстн