1. Открыть созданную ранее таблицу Пациенты в режиме конструктора:
- выбрать таблицу Пациенты в списке таблиц
- нажать кнопку Конструктор.
2. Удалить поле КодРаны из списка полей. Для этого необходимо выполнить следующие шаги:
- переместить курсор на поле КодРаны;
- выполнить команду Правка→Удалить строки или вызвать контекстное меню щелчком правой кнопки мыши и выполнить команду Удалить строки.
Альтернативным способом создания поля подстановки на основе уже существующего поля таблицы БД является изменение типа данных поля на тип «Мастер подстановок... ». При этом вызывается мастер создания полей подстановок, работа с которым рассматривается ниже.
3.Для сохранения измененной таблицы выполнить команду Файл→Сохранить.
4.Выполнить команду Вставка→Поле подстановок...
5.Выбрать пункт Объект «столбец подстановки» будет использовать значения из таблицы или запроса в появившемся диалоге:
Нажать кнопку Далее
6.В следующем диалоге выбрать таблицу Раны и нажать Далее.
7.В следующем диалоге переместить поле КодРаны и поле Вид раны из списка Доступные поля в список Выбранные поля
- выделить поле КодРаны;
- нажать кнопку ;
- выделить поле Вид раны;
- нажать кнопку .
В результате выбора полей диалог должен выглядеть, как показано на рисунке:
Нажать кнопку Далее→ Далее.
8.В следующем диалоге, перетаскивая правую границу столбца установить такую ширину столбца подстановки, чтобы текст в поле подстановки был полностью виден.
Нажать кнопку Далее.
9.Ввести в следующем диалоге подпись столбца подстановки текст КодРаны как показано на рисунке:
|
Нажать Готово.
10.Ответить Да в следующем диалоговом окне:
ПРИМЕЧАНИЕ: При создании поля подстановки Access автоматически создает связь «один ко многим» между таблицей подстановки и таблицей где устанавливается поле подстановки. Создание связей будет подробно рассмотрено ниже.
11.Сохранить таблицу: выполнить команду Файл→Сохранить
12.Закрыть таблицу базы данных.
Рассмотрим, как заполняются значения полей подстановки. Для этого выполним следующие операции:
1. Откроем таблицу Пациенты (двойной щелчок по наименованию таблицы в списке таблиц).
2. Переведем стрелками или мышью курсор ввода в поле КодРаны.
Как видно из рисунка, значение поля уже не вводится с клавиатуры, а выбирается из выпадающего списка как показано на рисунке.
После выбора значения из списка на экране в табличном редакторе в поле КодРаны будет отображаться уже не числовое значение — ссылка на запись в таблице Раны, а подставляемое значение.
При этом важно, что в самой таблице будет храниться именно числовое значение — значение поля КодРаны. Подставляемое наименование раны, т.е. значение поля Вид раны таблицы Раны будет отображаться в редакторе таблиц вместо числового значения КодРаны по значению которого осуществляется связь между таблицами.
ВНИМАНИЕ! Поля подстановки необходимо создавать на этапе создания таблиц базы данных, т.к. это существенно упрощает создание диалогов ввода вывода данных.
Создание связей между таблицами
База данных представляет собой не только совокупность таблиц, но и связей между ними. Именно благодаря наличию связей между таблицами база данных представляет собой целостное представление о части предметной области.
|
Само понятие «связь между таблицами» предполагает наличие между таблицами базы данных какой-либо зависимости.
Существует три основных типа зависимости: «один к одному», «один ко многим», «многие ко многим».
Зависимость «один к одному» (1:1) означает, что одной записи одной таблицы строго соответствует только одна запись другой таблицы. Такой тип связи применяется, когда в таблице с большим числом полей более часто используемые поля выносят в одну таблицу, менее используемые – в другую.
Зависимость «один ко многим» (1:М) означает, что одной записи таблицы соответствует много записей в другой таблице. Такой вид связи является наиболее распространенным. Пример, таблица Раны связана с таблицей Пациенты связью «один ко многим» по полю КодРаны.
Зависимость «многие ко многим» (М:М) означает, что одной записи первой таблицы соответствует много записей во второй, и одной записи во второй таблице соответствует много записей в первой. В нормализованной базе данных таблиц с такими связями быть не может, и эта связь реализуется через третью таблицу, связываемую с исходными отношением «один ко многим».
Практическое значение имеет установление связей «один к одному» и «один ко многим» в Access.
Создадим эти связи между таблицами базы данных в Access. Для этого необходимо выполнить следующую последовательность действий:
1. Перейти на вкладку Таблицы главного окна базы данных.
|
2. Вызвать контекстное меню и выполнить команду Схема данных как показано на следующем рисунке (или выполнить команду Сервис→Схема данных).
Схема данных - графический способ представления связей между таблицами базы данных.
В результате будет выведено окно конструктора схемы данных.
Такая схема была создана автоматически при создании полей подстановки в таблице Пациенты. Для того, чтобы последовательно рассмотреть процесс создания схемы данных, удалим все таблицы и связи, созданные Ассеss автоматически.
3. Выполнить команду Правка→Очистить макет для очистки ранее созданной схемы данных.
Создать связь Раны-Пациентыы.
5.1. Выполнить команду Связи→Добавить таблицу или нажать кнопку .
5.2. Выбрать таблицу Раны и нажать «Добавить» в следующем диалоге.
5.3 В этом же диалоге выбрать таблицу Пациентыы и нажать Добавить.
В результате в окне схемы базы данных увидим следующее:
5.4. Вызвать диалог Изменение связей для установки связи «один ко многим».
Для этого необходимо подвести указатель мыши к линии связи и произвести двойной щелчок мышью по ней.
Как видно из рисунка, между таблицами Раны или Пациентыы уже установлена связь «один ко многим». Однако, не установлен режим поддержки этой связи - обеспечение целостности данных.
Существует два метода поддержки целостности связи: каскадное обновление и каскадное удаление.
Каскадное обновление — механизм, при котором при изменении значения поля в родительской таблице автоматически изменяются значения во всех таких же полях связных таблиц.
Каскадное удаление — механизм, при котором при удалении записи из родительской таблицы удаляются все записи, связанные с данной, во всех других таблицах. Этот механизм необходимо включать для таблиц, данные которых составляют один документ.
5.5. Установите флажок «обеспечение целостности данных» и нажмите «ОК».
Теперь пользователь не сможет удалить Пациентыа базы данных Пациенты, если на него были заведена запись.
ВНИМАНИЕ! Необходимо правильно установить связи между таблицами, целостность этой связи и режим поддержки целостности. Без этого база данных не сможет нормально работать.
Окно схемы данных примет следующий вид:
Связь «один ко многим» в Access обозначается как 1:∞
Созданная схема базы данных используется Access для обеспечения ссылочной целостности базы данных — т.е. для сохранения непротиворечивости базы данных по ссылкам:
- если будет удалена запись из родительской таблицы, то будут удалены все связные записи из дочерних таблиц. Если этого не сделать, то после удаления записи из родительской таблицы, связные записи в дочерних таблицах будут указывать на несуществующие данные;
- если будет изменено значение поля связи в родительской таблице, то оно должно быть изменено и во всех связных записях других таблиц. Иначе, связные записи других таблиц будут содержать как новое, так и старое значение, что недопустимо.
3. Цель деятельности студентов на занятии:
Студент должен знать:
1. Основные структурные элементы интерфейса базы данных Ассess.
2. Основные термины Ассess.
3. Принцип работы с базой данных.
4. Как правильно вводить информацию, создавать таблицы.
5. Как импортировать данные электронных таблиц в базу данных.
Студент должен уметь:
1.Создать базу данных.
2.Вводить и редактировать данные при помощи мастера и конструктора.
3.Использовать данные с электронных таблиц.
4.Создавать многотабличную базу данных.
4. Содержание обучения:
Теоретическая часть:
1. Основные понятия базы данных Access.
2. Правила создания таблиц при помощи инструментов базы данных.
3. Создание связей между таблицами в базе данных.
Практическая часть:
1. Изучить теоретический материал, разбирая все представленные в нем примеры решения типовых задач.
2. Создать базу данных Access.
3. На основе предоставленного в варианте задания описания базы данных создать таблицы. Имена создаваемых таблиц должны совпадать с именами таблиц (сущностей), указанных в варианте задания.
4. В каждой таблице создать поля. Имена создаваемых полей и их типы данных должны соответствовать представленному в варианте описанию.
5. Создать связи между таблицами в соответствии с вариантом задания. При этом для каждой связи установить поддержку обеспечения целостности данных.
6. Создать поля подстановки в таблицах, где это необходимо.
Проверить схему базы данных: убедиться в том, что на схеме отражены все таблицы и связи между ними.
Вариант 1 | 30 - 40 мин. |
Даны фрагменты таблиц базы данных. Создать базу данных Травмпункт и заполнить данными. Там где требуется, создать поля подстановки для удобства заполнения таблиц.
Раны
Код | Вид Раны |
Огнестрельная | |
Резаная | |
Колотая | |
Рубленная | |
Ушибленная | |
Рваная | |
Размозженная | |
Укушенная |
Кровотечения
Код | Вид кровотечение |
Артериальное | |
Капиллярное | |
Паренхиматозное | |
Наружное | |
Внутреннее |
Пациенты
Номер | Ф.И.О. | Дата поступления | Рана | Кровотечение |
Хубулов К.П. | 25.05.2006 | Колотая | Внутреннее | |
Петрова З.А. | 27.05.2006 | Огнестрельная | Наружное | |
Засеева Ф.А. | 30.05.2006 | Укушенная | Артериальное | |
Багаева С.В. | 02.06.2006 | Рваная | Капилярное | |
Руденко Л.И. | 07.06.2006 | Резанная | Паренхиматозное |
Вариант 2 | 30 - 40 мин. |
Даны фрагменты таблиц базы данных. Создать базу данных Прививочный кабинет и заполнить данными. Там где требуется, создать поля подстановки для удобства заполнения таблиц.
Прививки
Код | Наименование |
БЦЖ | |
АКДС | |
Полиомиелит | |
Корь | |
Паротит | |
Краснуха | |
АДС-М | |
Коклюш | |
Грипп | |
Боткина |
Дети
Код ребенка | Ф.И.О | Дата рождения |
Бочарова В.С. | 20.04.2005 | |
Петров А.А. | 27.05.2003 | |
Габуева З.А. | 30.01.2001 | |
Кундухов Г.Г. | 31.12.2006 | |
Зембатова К.А. | 01.05.2004 |
Профилактика
Код | КодРебенка | КодПрививки | Дата вакцинации |
Бочарова В.С | Краснуха | 12.06.06 | |
Петров А.А. | Грипп | 17.09.06 | |
Габуева З.А | Коклюш | 13.08.06 | |
Кундухов Г.Г | Боткина | 10.10.06 | |
Зембатова К.А | АДС-М | 11.12.06 |
5. Перечень вопросов для проверки исходного уровня знаний:
1. Понятие базы данных.
2. Основные элементы базы данных.
3. Типы базы данных.
4. Организация данных в базе данных.
6. Перечень вопросов для проверки конечного уровня знаний:
1. Как происходит ввод данных с помощью Конструктора?
2. Как происходит ввод данных с помощью Мастера?
3. Опишите процесс импорта данных электронных таблиц в базу данных.
7.Хронокарта учебного занятия:
1.Организационный момент – 5 мин.
2.Текущий контроль знаний – 30 мин.
3.Разбор темы – 20 мин.
4.Практическая работа – 30 мин.
5.Подведение итогов занятия – 10 мин.
7. Самостоятельная работа студентов.
Изучите основные принципы построение Баз данных
8.Перечень учебной литературы к занятию:
1. Разработка баз данных в системе Microsoft Access: учебник Кузин, А.В. / А.В. Кузин, В.М. Демин.М.: Инфра-М., 2007.
2. Лекция по данной теме.