Общая схема работы в окне «Схема данных» включает в себя создание связей (предыдущий подраздел) и следующие приемы их редактирования:
1. При работе в окне «Схема данных» самая необходимая панель инструментов (ПИ) – это ПИ «Связь» (она видна на рисунке 11 под главным меню). Если эта ПИ отсутствует, ее можно вызвать, щелкнув правой кнопкой на главном меню окна и выбрав «Связь».
2. Если окно «Схема данных» пусто, это не означает, что связей между таблицами нет. Чтобы выяснить, есть ли связи, нужно щелкнуть кнопку «Отобразить все связи» ПИ «Связь».
3. Редактирование конкретной связи в окне «Схема данных»: щелчком правой кнопки на линии, изображающей связь (на тонкой части линии!), получить меню из двух опций: «Изменить связь…» и «Удалить».
4. Если в БД много таблиц, то можно скрыть часть макетов в окне «Схема данных»: вызвать контекстное меню, щелкнув правой кнопкой мыши на макете таблицы. Возвращение всех макетов – кнопкой «Отобразить все связи» ПИ «Связь».
7. Удаление макета таблицы – удалить связи этой таблицы (см. пункт 3), щелкнуть на макете, клавиша Delete.
УПРАЖНЕНИЕ 4: создание связи по составному ключу, поле со списком подстановок
1. Измените структуру таблицы «Жители»: сделайте поля «ФИО» и «место работы» составным ключом (раздел «3.3. Создание таблиц», подраздел «Создание структуры таблицы с помощью «Конструктора»»).
Добавьте в таблицу «Машины» поле «место работы» согласно последующим указаниям.
Указания по заполнению поля с помощью списка подстановок
В столбец «место работы» нужно занести те же данные, которые занесены в таблицу «Жители». Поэтому, для упрощения ввода данных, зададим поле «место работы» в «Машины» как поле со списком подстановок. Для этого нужно:
а) В окне «Конструктора» для поля «место работы» щелкнуть поле «тип данных». В меню кнопки 6 выбрать «Мастер подстановок».
б) В окне «Мастера» на первом шаге задать способ получения списка: «из таблицы». На последующих шагах указать таблицу, из которой берется список; указать поле, из которого берется список; задать ширину столбца (лучше задать «автоматический подбор ширины»); оставить подпись «место работы», кнопка «Готово».
в) ВНИМАНИЕ! Если имя поля «место работы» в окне «Конструктора» изменилось, снова введите правильное имя.
Теперь можно заполнять поле «место работы» в таблице «Машины». Откройте в окне БД одновременно таблицы «Жители» и «Машины». Для работы нужны три столбца: «ФИО» из «Жители», «ФИО» и «место работы» из «Машины». Отрегулируйте ширину обоих окон и скройте, если надо, часть столбцов, чтобы были видны одновременно упомянутые три столбца. И заполните поле «место работы», вызывая список подстановок в ячейках этого столбца.
Рис. 12
2. Создайте связь между таблицами по составному полю связи согласно разделу «Создание связи между таблицами». Перед щелчком на кнопке «Создать» в окне «Изменение связей» нужно ввести имена связываемых полей, как это показано на рисунке 12 (в текстовых полях можно вызывать меню возможных имен полей с помощью кнопок 6 – см. рисунок).
Занесение данных в связанные таблицы, случай связи «Один-ко-многим»: занести запись в главную таблицу, щелчком на управляющей кнопке +…. вызвать подчиненные таблицы (их пока что пустые строки), внести записи, кнопка .. – .….
3.5. Запросы и отчеты
Рассмотрим создание запросов на выборку с помощью Access. Общие сведения о запросах были приведены в разделе «2.3. Работа с СУБД. Запросы». Запросы на выборку далее будем называть просто «запросами».
Напомним, что запрос – это указание (инструкция) пользователя относительно отбора данных из связанных таблиц (раздел 3.1). Результат выполнения запроса мы называем таблицей-результатом. Далее будет рассмотрено создание запросов путем работы с диалоговыми окнами. В этом случае запрос создается в два этапа. На первом этапе задаются связи между таблицами. При этом о создании запроса не говорят, хотя фактически это уже создание части инструкции на языке SQL – общей для всех запросов ее части (раздел 2.3). Следующий этап при работе с окнами (этап конкретизации запроса) и называется обычно «созданием запроса». Будем придерживаться этой, общепринятой, терминологии. Итак, рассмотрим второй этап – «создание запроса».
В запросе указывается:
• Какие поля из связанных таблиц нужно включить в таблицу-результат.
• Каким условиям должны удовлетворять значения этих полей. (В результате, из связанных таблиц отберутся определенные записи).
Еще раз напомним, каким образом при выполнении запроса «сработает» наличие связи между таблицами: задание связи устанавливает соответствие между записями нескольких таблиц, в таблицу-результат будут заноситься данные, взятые из соотвествующих записей.