Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


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





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

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

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


Рассмотрим, как реализуется установка связей между таблицами на практике.

Успеваемость № студ. билета Предмет Оценка
Преподаватели ФИО Предмет Группа

Между одноименными полями двух таблиц MS Access автоматически устанавливает связь. Например, между таблицами «Студенты» и «Успеваемость» устанавливается связь по полю «№ студ. билета». Это означает, что при формировании запроса к этой паре таблиц Access сможет объединить записи (строки) таблиц, в которых значения поля «№ студ. билета» совпадают.

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

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

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

Механизм, который обеспечивает согласованность данных между двумя связанными таблицами, называется поддержкой целостности данных. Чтобы обеспечить целостность данных, при установлении связи между двумя таблицами нужно активизировать переключатель. Если пользователь включил механизм поддержки целостности, то он должен одновременно указать тип связи: «один к одному» или «один ко многим».

Целостность данных означает следующее:


  • в связанное поле подчиненной таблицы можно вводить только те значения, которые имеются в связанном поле главной таблицы (например, в таблицу «Успеваемость» нельзя ввести запись с номером студенческого билета, отсутствующим в таблице «Студенты»);


из главной таблицы нельзя удалить запись, у которой значение связанного поля совпадает хотя бы с одним значением того же поля в подчиненной таблице (например, из таблицы «Студенты» нельзя удалить «№ студ. Билета», который еще не удален из таблицы «Успеваемость»).

При попытке нарушить эти запреты MS Access выдает сообщение об ошибке.

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


  • каскадное обновление связанных полей;

  • каскадное обновление связанных записей.


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

Установление связей между таблицами рассмотрим на конкретном примере – на нашей базе данных «Колледж».

Выберите команду ^ Правка /Схема данных. На экране появится диалоговое окно со списком всех таблиц открытой базы данных.

Можно включить в этот список и запросы (или создать список только из запросов).

Задача пользователя– указать системе те таблицы, между которыми он устанавливает связи. Нужно выделить таблицу «Преподаватели» и нажать кнопку Добавить, затем то же самое проделать с таблицами «Успеваемость» и «Студенты». Нажать кнопку Закрыть.

На экране появится окно Схема данных.

Это окно содержит все таблицы базы данных, между которыми устанавливаются (или уже установлены) связи. Для установления связи между двумя таблицами можно методом «Drag-and-Drop» переместить имя поля с первичным ключом главной таблицы на одноименное поле подчиненной таблицы.

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

После активизации флажка «Обеспечение целостности данных» становятся допустимыми радиокнопки Отношение и два флажка каскадных операций. В группе «Отношение» надо обязательно выбрать один из типов связи: «один-к-одному» или «один-ко-многим».

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


Поделиться:

Дата добавления: 2015-04-18; просмотров: 73; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты