
- •Система управления базами данных access
- •2002 Содержание
- •Общие сведения Основные Термины
- •Понятие реляционной базы данных
- •Примеры выделения ключевых полей
- •Типы связей между таблицами.
- •Порядок работы при создании базы данных
- •Создание новой бд
- •Создание таблиц
- •Загрузка таблицы данными
- •Работа с макетом таблицы
- •Фильтрация данных
- •Запросы
- •Создание форм на основе одной таблицы или запроса
- •Выделение элементов формы
- •Создание многотабличных форм
- •Элементы управления и их свойства
- •Свойства формы
- •Расположение элементов управления на форме
- •Сортировка и группировка даннных
- •Создание отчета при помощи мастера
- •Создание отчета накладная
- •Синхронизация данных в форме и отчете
- •Макросы
- •Ссылки на объекты бд
- •Создание макросов
- •Краткая характеристика макрокоманд
- •Создание простого макроса , позволяющего выбирать из списка клиента для последующего создания отчета
- •Пример создания макроса архивации старых данных.
- •Пример макроса, позволяющего изменять кол-во компьютеров на складе, при заполнении формы заказ.
- •Групповые макросы
- •Создание группового макроса , позволяющего изменять количество товара на складе при заполнении формы и изменять свойство видимости кнопок (visible)
- •Организация поиска при помощи макроса
- •Условные макросы
- •Создание формы ввода пароля
- •Условный макрос Скидка
- •Реализация циклов в макросах
- •Создание Приложения Пользователя
- •Создание кнопочной формы при помощи мастера
- •Создание кнопочной формы при помощи конструктора форм
- •Создание панели Инструментов пользователя.
- •Создание строки меню пользователя.
- •Параметры запуска приложения
- •. Сжатие бд
- •Восстановление Повреждений.
- •Список литературы
Типы связей между таблицами.
Одним из важнейших достоинств реляционных баз данных состоит в том , что можно хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя в единую базу. Для задания связи таблицы должны иметь поля с одинаковым типом данных. Связь между таблицами устанавливает отношение между совпадающими значениями в этих полях. Такая организация позволяет уменьшить избыточность хранимых данных , упрощает их ввод , удаление, поиск
Отношение (связь) один - ко – многим (1: M или M:1) является наиболее часто используемым типом связи. В такой связи каждой записи в таблице А (первичныйключ)соответствует несколько записей в таблице В (внешний ключ), а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А. Таблица А называется главной ,а таблица В подчиненной таблицей. Или иногда таблицу А называют родительской таблицей, а В – дочерней .
Примеры
Одной записи в таблице Клиенты может соответствовать много записей в таблице Заказы .
Одной записи в таблице Товары может соответствовать много записей в таблице Заказы .
Связь один ко многим создается в том случае, когда поле одной из таблиц является ключевым
Отношение ( связь) один - к – одному (1:1) . Запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Содержимое таких таблиц как правило можно объединить в одну. Этот тип связи используется довольно редко Такие связи имеет смысл устанавливать для разделения таблиц с очень большим количеством полей, для отделения части таблицы по соображениям защиты или если не все данные из одной таблицы используются в другой .
В данном случае только незначительная часть сотрудников занимаются серьезно спортом и имеют спортивные разряды, поэтому данные о сотрудниках спортсменах выделены в отдельную таблицу.
Связь один к одному создается только в том случае когда оба поля являются ключевыми
Отношение ( связь) многие ко многим (N:M). Одной записи в таблице А может соответствовать несколько записей в таблице В , а одной записи в таблице В может соответствовать много записей в таблице А.
У одной книги может быть несколько авторов , а каждого автора может быть несколько книг.
Такую
связь вMSAccessреализовать невозможно. Такая связь
реализуется только при помощи третьей
таблицы – таблицы связки, имеющей
составной ключ
Внимание!Связь многие ко многим преобразуется в две связи один ко многим при помощи таблицы связки.
Установление связи между таблицами возможно
Связываемые поля имеют одинаковый тип данных. Исключение составляет поле счетчик, так как поле счетчик не может быть использовано в качестве вторичного ключа. Поле счетчик может быть связано с числовым полем, имеющим размер длинное целое.
Таблицы хранятся внутри одной БД.
Главная таблица связывается с подчиненной по ключу
При создании связи между таблицами устанавливается параметр целостности данных, а также параметры каскадного обновления и удаления связанных записей.
Обеспечение целостности данных для связанных таблиц означает
В подчиненную таблицу не может быть добавлена запись с несуществующим в главной таблице ключом связи
В главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице.
Изменение значений ключа связи главной таблицы должно приводить к изменению соответствующих значений в записях подчиненной таблицы
Каскадное обновление и удаление связанных записей
В режиме каскадного обновления связанных записей при изменении значения в поле связи главной таблицы автоматически изменяются значения в подчиненной таблице. (Например изменяя название фирмы в таблице Клиенты , изменится название фирмы в таблице Заказы).
При удалении записи из главной таблицы будут автоматически удаляться записи из подчиненной таблицы.
Связи между таблицами в MS Access графически отображаются на схеме данных. Схема данных задает структуру базы данных. В ней определяются и запоминаются связи между таблицами. Таблицы представляются списками полей, а связи линиями между полями разных таблиц.
Совет! Не присваивайте ключевым полям одинаковые имена иначе в дальнейшем Вы столкнетесь с рядом проблем
Вернемся к нашему первому примеру и получим следующую схему данных
Данную схему назовем Схема1
Теперь в таблице Заказы хранятся только коды клиентов и коды товаров, а не данные о клиентах и товарах, но тем не менее у созданной схемы данных имеется недостаток. Один заказ может включать только один товар, что как правило не соответствует действительности.
Попробуем исправить схему, введя еще одну таблицу Товар-Заказ, имеющую составной ключ Код товара и №заказа , а также поле показывающее количество заказанного товара.
Данную схему назовем Схема2