конспект по базам данных. лекции базы данных. Тема Системы управления базами данных Microsoft Access Запуск Microsoft access для Windows
Скачать 1.13 Mb.
|
Установление связей между таблицамиMicrosoft Access имеет дело с базами родственных данных, благодаря чему вы можете одновременно работать с данными из нескольких таблиц. Сформировав таблицы базы данных и установив ключевое поле для каждой таблицы, можно создать между таблицами взаимоотношения. Они помогут Microsoft Access связывать данные в каждом новом запросе, форме или отчете, включающем обе связанные таблицы. В Microsoft Access можно создать два типа связей: отношение один-ко-многим (рис. 7) или отношение один-к-одному (рис. 6). В первом случае, более распространенном, одна запись таблицы связана с множеством записей другой таблицы. В случае менее распространенного отношения один-к-одному одной записи в первичной таблице соответствует только одна запись связанной таблицы. Например, фамилия, имя, отчество, пол, дата рождения, группа студента могут располагаться в одной таблице, а данные о результатах сессии - в другой. Между этими таблицами будет существовать отношение один-к-одному, так как каждой записи в одной из них соответствует единственная запись в другой. Создание связи между двумя таблицамиДля создания связи между двумя таблицами, следует прежде убедиться, что в них есть совпадающие поля, выбрать базовую таблицу из двух (если речь идет о связи один – ко – многим). Например, в двух таблицах студент и сессия (рис. 1 и рис. 3) количество записей одинаково, следовательно, здесь тип связи один – к –одному. Для осуществления связи необходимо предварительно в режиме Конструктора (таблицы студент и сессия) установить Ключевое поле с помощью динамического меню, нажав мышью напротив поля Номер. Установив Ключевое поле в двух таблицах, их можно связать. Например, в двух других таблицах: сессия (рис. 3) и стипендия (рис.4) , количество записей разное, следовательно, здесь тип связи один – ко – многим. В этом случае необходимо выбрать из них базовую таблицу. Базовая таблица – эта та таблица, в которой нет совпадающих записей в одинаковых полях двух таблиц (совпадающие поля – Результат). В данном примере базовой будет таблица стипендия и только в ней необходимо установить Ключевое поле напротив поля Результат. Установив Ключевое поле в таблице стипендия, можно установить тип связи один – ко - многим. После того как связь установлена, нельзя изменять или удалять поля, на которых она основана, до тех пор, пока не удалите саму связь. Прежде чем создать связь, необходимо открыть окно Схема данных. Для этого выберите команду Схема данных из меню Сервис. Если данное окно открывается не впервые, окно появится точно в таком виде, в каком сохранили его в последний раз. При первом установлении связи окно будет пустым и сначала появится диалоговое окно Добавление таблицы. Затем необходимо добавить все таблицы, которые необходимо связать. В данном примере в окне Схема данных показана взаимосвязь между таблицами базы данных sess.dmb (рис. 5). Дополнительные две таблицы: сессия и стипендия показаны на рис. 3 и рис. 4 соответственно. Для установления связи между таблицей студент и таблицей сессия необходимо: Перетащите мышью поле Номер из списка полей студенты в поле Номер из списка полей сессия. Отпустив клавишу мыши, появится диалоговое окно Связи (рис.6). Замечание: проверьте, что имя поля находится в обоих списках. В диалоговом окне Связи также приведены элементы управления для обеспечения условий целостности данных. Если установлен только флажок Обеспечение целостности данных, то удалять данные из ключевого поля главной таблицы нельзя. Если включены и флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей, то, соответственно, операции редактирования и удаления данных в ключевом поле главной таблицы разрешены, но сопровождаются автоматическими изменениями в связанной таблице. Нажмите на кнопку Создать, теперь таблица студент связана с таблицей сессия. Видно линию, которая соединяет два совпадающих поля в этих таблицах (рис. 5). Взаимосвязь будет сохраняться до тех пор, пока ее не удалите. Два раза щелкнув по данной связи, можно ее изменить. Закройте данное окно, при этом система спросит, сохранить ли изменения макета Схема данных. Заметим, что от вашего решения зависит лишь графическое представление окна. Установленные же связи останутся в вашей базе данных. Нажмите на кнопку Да, чтобы сохранить представление окна взаимосвязей. Открыв в следующий раз окно Схема данных, увидите его таким, каким только что сохранили. Для установления связи между таблицей стипендия и таблицей сессия необходимо: Перетащите мышью поле Результат из списка полей стипендия в поле Результат из списка полей сессия. Отпустив клавишу мыши, появится диалоговое окно Связи (рис.7). Далее действовать аналогичным образом, как и при установлении связи между предыдущими таблицами. Замечание: Поля связанной таблицы, соответствующие ключевым полям первичной таблицы, могут иметь разные имена. Но они должны содержать совпадающие данные и характеризоваться одинаковым типом данных, а поля данных цифрового типа должны также иметь одинаковый формат. Исключение составляет случай, когда ключевое поле первичной таблицы по типу данных является счетчиком. Тогда соответствующее поле связанной таблицы может быть тоже счетчиком или характеризоваться цифровым типом данных, причем свойство Размер поля должно быть установлено на Длинное целое. Работа с запросамиЭти объекты служат для извлечения данных из таблиц и предоставления их пользователю в удобном виде. Запрос определяет группу записей, с которыми необходимо работать. Можно применить запрос для сортировки данных или для просмотра целого подмножества сведений из вашей базы данных. Например, вместо того, чтобы просматривать всю таблицу студент, можно просмотреть сведения только о студентах, получивших оценки хорошо или отлично (рис. 9) или о студентах, получивших также и удовлетворительные оценки (рис. 8). Запросы лучше готовить вручную, с помощью Конструктора. Для этого необходимо из меню Вставка выбрать команду Запрос, при этом появится диалоговое окно Новый запрос, в котором необходимо выбрать режим Конструктор. Создание запроса в режиме Конструктор откроет специальный бланк, называемый бланком запроса по образцу (рис. 10, 11). Он состоит из двух областей. В верхней отображается структура таблиц, к которым запрос адресован, а нижняя область разбита на столбцы – по одному столбцу на каждое поле будущей результирующей таблицы. С помощью команды Добавить таблицу из меню Запрос откроется диалоговое окно Добавление таблицы. Выбрав необходимые таблицы, в верхней области (рис. 10) откроются те таблицы, к которым обращен запрос. Между этими таблицами необходимо установить нужные связи для правильного запуска запроса. Затем из них переместите мышью те поля, которые должны войти в результирующую таблицу. При этом автоматически заполняются столбцы в нижней части бланка. Сформировав структуру запроса, его закрывают, дают ему имя и в дальнейшем запускают двойным щелчком на значке в окне База данных. В нижней части бланка имеется специальная строка Сортировка. При щелчке на этой строке открывается кнопка раскрывающегося списка, в котором можно выбрать метод сортировки: по возрастанию или по убыванию. В нижней части бланка имеется специальная строка Условие отбора. Для каждого поля в этой строке можно задать индивидуальное условие, например, на рис. 10 введено условие 0 в столбце Процент, на рис. 11 введено условие >0. Р ис. 3 Р ис. 4 Р ис. 5 Рис. 6 Р ис. 7 Р ис. 8 Рис. 9 Р ис. 10 Р ис. 11 |