Домой / Google Chrome / Схема данных отображает. Создание схемы данных. Схема как структура базы данных

Схема данных отображает. Создание схемы данных. Схема как структура базы данных

В современном мире нужны инструменты, которые бы позволяли хранить, систематизировать и обрабатывать большие объемы информации, с которыми сложно работать в Excel или Word.

Подобные хранилища используются для разработки информационных сайтов, интернет-магазинов и бухгалтерских дополнений. Основными средствами, реализующими данный подход, являются MS SQL и MySQL.

Продукт от Microsoft Office представляет собой упрощенную версию в функциональном плане и более понятную для неопытных пользователей. Давайте рассмотрим пошагово создание базы данных в Access 2007.

Описание MS Access

Microsoft Access 2007 – это система управления базами данных (СУБД), реализующая полноценный графический интерфейс пользователя, принцип создания сущностей и связей между ними, а также структурный язык запросов SQL. Единственный минус этой СУБД – невозможность работать в промышленных масштабах. Она не предназначена для хранения огромных объемов данных. Поэтому MS Access 2007 используется для небольших проектов и в личных некоммерческих целях.

Но прежде чем показывать пошагово создание БД, нужно ознакомиться с базовыми понятиями из теории баз данных.

Определения основных понятий

Без базовых знаний об элементах управления и объектах, использующихся при создании и конфигурации БД, нельзя успешно понять принцип и особенности настройки предметной области. Поэтому сейчас я постараюсь простым языком объяснить суть всех важных элементов. Итак, начнем:

  1. Предметная область – множество созданных таблиц в базе данных, которые связаны между собой с помощью первичных и вторичных ключей.
  2. Сущность – отдельная таблица базы данных.
  3. Атрибут – заголовок отдельного столбца в таблице.
  4. Кортеж – это строка, принимающая значение всех атрибутов.
  5. Первичный ключ – это уникальное значение (id), которое присваивается каждому кортежу.
  6. Вторичный ключ таблицы «Б» – это уникальное значение таблицы «А», использующееся в таблице «Б».
  7. SQL запрос – это специальное выражение, выполняющее определенное действие с базой данных: добавление, редактирование, удаление полей, создание выборок.

Теперь, когда в общих чертах есть представление о том, с чем мы будем работать, можно приступить к созданию БД.

Создание БД

Для наглядности всей теории создадим тренировочную базу данных «Студенты-Экзамены», которая будет содержать 2 таблицы: «Студенты» и «Экзамены». Главным ключом будет поле «Номер зачетки», т.к. данный параметр является уникальным для каждого студента. Остальные поля предназначены для более полной информации об учащихся.

Итак, выполните следующее:


Все, теперь осталось только создать, заполнить и связать таблицы. Переходите к следующему пункту.

Создание и заполнение таблиц

После успешного создания БД на экране появится пустая таблица. Для формирования ее структуры и заполнения выполните следующее:



Совет! Для тонкой настройки формата данных перейдите на ленте во вкладку «Режим таблицы» и обратите внимание на блок «Форматирование и тип данных». Там можно кастомизировать формат отображаемых данных.

Создание и редактирование схем данных

Перед тем, как приступить к связыванию двух сущностей, по аналогии с предыдущим пунктом нужно создать и заполнить таблицу «Экзамены». Она имеет следующие атрибуты: «Номер зачетки», «Экзамен1», «Экзамен2», «Экзамен3».

Для выполнения запросов нужно связать наши таблицы. Иными словами, это некая зависимость, которая реализуется с помощью ключевых полей. Для этого нужно:


Конструктор должен автоматически создать связь, в зависимости от контекста. Если же этого не случилось, то:


Выполнение запросов

Что же делать, если нам нужны студенты, которые учатся только в Москве? Да, в нашей БД только 6 человек, но что, если их будет 6000? Без дополнительных инструментов узнать это будет сложно.

Именно в этой ситуации к нам на помощь приходят SQL запросы, которые помогают изъять лишь необходимую информацию.

Виды запросов

SQL синтаксис реализует принцип CRUD (сокр. от англ. create, read, update, delete - «создать, прочесть, обновить, удалить»). Т.е. с помощью запросов вы сможете реализовать все эти функции.

На выборку

В этом случае в ход вступает принцип «прочесть». Например, нам нужно найти всех студентов, которые учатся в Харькове. Для этого нужно:


А что делать, если нас интересуют студенты из Харькова, стипендии у которых больше 1000? Тогда наш запрос будет выглядеть следующим образом:

SELECT * FROM Студенты WHERE Адрес = «Харьков» AND Стипендия > 1000;

а результирующая таблица примет следующий вид:

На создание сущности

Кроме добавления таблицы с помощью встроенного конструктора, иногда может потребоваться выполнение этой операции с помощью SQL запроса. В большинстве случаев это нужно во время выполнения лабораторных или курсовых работ в рамках университетского курса, ведь в реальной жизни необходимости в этом нет. Если вы, конечно, не занимаетесь профессиональной разработкой приложений. Итак, для создания запроса нужно:

  1. Перейти во вкладку «Создание».
  2. Нажать кнопку «Конструктор запросов» в блоке «Другие».
  3. В новом окне нажмите на кнопку SQL, после чего в текстовое поле введите команду:

CREATE TABLE Преподаватели
(КодПреподавателя INT PRIMARY KEY,
Фамилия CHAR(20),
Имя CHAR (15),
Отчество CHAR (15),
Пол CHAR (1),
Дата_рождения DATE,
Основной_предмет CHAR (200));

где «CREATE TABLE» означает создание таблицы «Преподаватели», а «CHAR», «DATE» и «INT» - типы данных для соответствующих значений.


Внимание! В конце каждого запроса должен стоять символ «;». Без него выполнение скрипта приведет к ошибке.

На добавление, удаление, редактирование

Здесь все гораздо проще. Снова перейдите в поле для создания запроса и введите следующие команды:


Создание формы

При огромном количестве полей в таблице заполнять базу данных становится сложно. Можно случайно пропустить значение, ввести неверное или другого типа. В данной ситуации на помощь приходят формы, с помощью которых можно быстро заполнять сущности, а вероятность допустить ошибку минимизируется. Для этого потребуются следующие действия:


Все базовые функции MS Access 2007 мы уже рассмотрели. Остался последний важный компонент – формирование отчета.

Формирование отчета

Отчет – это специальная функция MS Access, позволяющая оформить и подготовить для печати данные из базы данных. В основном это используется для создания товарных накладных, бухгалтерских отчетов и прочей офисной документации.

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

  1. Перейдите во вкладку «Создание».
  2. Нажмите на кнопку «Мастер отчетов» в блоке «Отчеты».

  3. Выберите интересующую таблицу и поля, нужные для печати.

  4. Добавьте необходимый уровень группировки.

  5. Выберите тип сортировки каждого из полей.

  6. Настройте вид макета для отчета.

Схема данных позволяет:

1. Установить связи между записями в таблицах.

2. Отобразить их графически на экране монитора и/или вывести на печать.

3. Обеспечить защиту от случайного удаления или изменения связанных данных.

4. Автоматически использовать эти связи при построении

· запросов к БД;

· составных (подчиненных) форм;

· отчетов.

5. Обеспечить целостность данных.

В Microsoft Access можно установить три типа связей:

· “один-к-одному”;

· “один-ко-многим”;

· “не определено”.

Последний тип связи соответствует связи типа “многие-ко-многим”.

В связи “один-к-одному” одной строке первой таблицы соответствует только одна строка во второй. Эта связь используется для разделения таблиц, имеющих большое количество полей, или для отделения части таблицы, содержащей важные или секретные данные, доступ к которым разрешен ограниченному кругу лиц.

В связи “один-ко-многим” каждой строке первой таблицы (главной ) могут соответствовать несколько строк во второй (подчиненной ), а строка в подчиненной таблице не может иметь более одной соответствующей ей строки в главной. В главной таблице связываемое поле должно быть ключевым уникальным , а в подчиненной таблице – любым. Связь “один-ко-многим” используется наиболее часто.

Связь “один-ко-многим” возникает, если:

· связываемое поле подчиненной таблицы является неключевым

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

Поля связи подчиненной таблицы образуют внешний ключ .

Предполагая, что таблица соответствует информационному объекту предметной области (ПО), можно считать, что схема БД является отображением в Microsoft Access семантической модели ПО . При условии, что таблицы в схеме расположены по уровням иерархии, схема БД является отображением в Microsoft Access канонической формы ИЛМ ПО .

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

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

Примечания

1. СУБД Access позволяет включать в схему данных не только таблицы, но и запросы. Это позволяет отображать результаты запросов в виде формы на экране и/или вывести ее на печать.

2. В схеме данных можно установить связи между таблицами не только для обеспечения целостности данных, но и для автоматического объединения таблиц в запросах при их проектировании. Обычно это не делается, т.к. усложняется схема данных, а связать таблицы очень просто непосредственно в запросах.

Конец работы -

Эта тема принадлежит разделу:

Экономики и финансов

Государственное образовательное учреждение высшего профессионального.. кафедра информатики..

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

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Нач.года сдано ние
────────────────────────────&

Нач.года сдано ние
ТНП 10000 шт. 8500 шт. –1500 шт. Ширпотреба 21100 шт. 21100 шт. 0 шт.

От нач. года отгружено

От нач. года отгружено
Заказчик: АО "Пассаж" г. С.-Петербург Договор: 21-04 Термос 15000 шт. 14500 шт. 500 шт.

От нач. года отгружено ние
15-04 Термос 35000 шт. 35000 шт. 0 шт. Мясорубка 40000 шт. 35000 шт. 5000 шт.

От начала года отгружено
15-04 АО “ЦУМ” 40000 шт. 35000шт. 5000 шт. г. Москва 21-04 АО “Пассаж” 20000 шт.

Заказчик № договора № ТТН Дата отгрузки Сумма отгрузки
АО "ЦУМ" 15-97 162 31.05.04 250000 р. г. Москва 234 28.06.04 300000 р.

Счета поручен
АО "ЦУМ" 15-04 162 31.05.04 250000 р. 200000 р. 50000 р. г. Москва 234

Счета поручению
15-04 162 31.05.04 2500000 р. 200000 р. 50000 р. 234 28.06.04 3000000 р. 300000 р. 0 р.

Поручению
АО "ЦУМ" 15-04 550000 р. 500000 р. 50000 р. г. Москва 16-04 100000 р. 100000 р.

Поручения
100 31.05.04 2500000 р. 110 01.08.04 500000 р.

Заказчик № дог. № ТТН Дата Отгружено Сумма
отгрузки отгрузки АО “ЦУМ” 15-04 162 31.05.04 1000 шт. 9000 р. г. Москва 234 28

Отгружено оплачено
А/О “ЦУМ” 200 31.03. 05 Мясорубка 90000 р. 72000 р. 18000 р. г. Москва 250 25.04. 05 Термо

Отгружено оплачено
200 31.03. 04 Мясорубка 90000 р. 72000 р. 18000 р. 250 25.04. 04 Термос 40000 р. 32000 р.

Отгружено оплачено
АО “ЦУМ”

Отгружено оплачено
200 31.03.05 Мясорубка 90000 р. 72000 р. 18000 р. 250 25.04.05 Термос 40000 р. 32000 р. 80

Месяц План оплаты Факт оплаты
Январь 2124000 р. Февраль 5600000 р. 624000 р. Март 5624000 р. 5600000 р.

Кон. месяца
Склад ТНП Мясорубка 4000000 р. 3600000 р. 400000 р. Термос 10000000 р. 10000000 р. 0 р.

Кон. месяца
Мясорубка 4000000 р. 3600000 р. 400000 р. Термос 10000000 р. 10000000 р. 0 р.

Арм товароведа (арм-т)
Деятельность товароведа универмага связана с управлением товародвижением. Типовые управленческие функции товароведа: 1) Ведение нормативно-справочной базы для управления торговой деятельно

Расчет размера заказа
Планирование заказов товаров осуществляется с учетом поддержки необходимого уровня запасов товаров на складе. Для каждого товара устанавливается фиксированный нижний предел запаса (точка заказа). Е

АРМ менеджера ресторана
Типовые функции управления, выполняемые менеджером ресторана: 1) Ведение нормативно-справочной базы для управления рестораном. 2) Расчеты с персоналом. 3) Анализ деятельн

Список врачей поликлиники на ХХ.ХХ.ХХ
№ п/п Специализация Табельный номер врача Фамилия Имя Отчество врача Дата поступления Стоимость посещения

Сведения о выдаче номеров к врачам за ХХ.ХХ.ХХ
Специализация врача Фамилия врача Всего номеров по плану Всего выдано номеров Количество вакансий

Арм врача
Типовые функции управления, выполняемые врачом поликлиники: 1) Обслуживание пациентов. 2) Запросный режим (определяется самостоятельно). Комплекс задач «Обслуживание п

Постановка задачи
4.2.1. Составление плана работ по созданию информационных технологий приложений Создание и внедрение информационных технологий требуют координации действий различных

Определение базы данных
База данных (БД) - это совокупность взаимосвязанных данных, организованных на внешних носителях информации средствами СУБД и используемых одним или несколькими прилож

Архитектура базы данных
Под архитектурой базы данных понимается многоуровневое описание предметной области. Большинство баз данных имеет архитектуру ANSI/SPARC, предложенную Исследовательской группой ANSI/SPARC Study grou

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

Этапы проектирования базы данных
Процесс проектирования базы данных состоит из трех этапов (рис. 4.2): · концептуальное проектирование базы данных; · логическое проектирование базы данных; · физичес

Информационно-логическая модель предметной области
Одним из способов логического проектирования базы данных является построение информационно-логической модели предметной области (ИЛМ ПО). ИЛМ обеспечивает интегрированное, не зависящее от средств р

Алгоритм построения информационно-логической модели предметной области
1. Добавить коды объектов в те таблицы, в которых они отсутствуют. 2. Определить сущности ПО. 3. Выделить в отдельные отношения сущности, отображающие справочные данные в документ

Сруктурные связи ИО
Отношение двух ИО отражает объективную и устойчивую во времени связь сущностей. Количественное соответствие экземпляров ИО может быть одно-однозначного (1:1), одно-многозначного (1:M), много

Каноническая форма ИЛМ ПО
Каноническая форма ИЛМ предназначена для формализованного перехода к логической структуре БД. ИЛМ ПО представлена в канонической форме при выполнении следующих условий. 1. Все ИО описывают

Входная информация
Ниже приводится информационная схема задачи, в которой показаны документы, являющиеся источниками информации для ее решения. Входные документы Задача

Ограничения предметной области
Для выявления функциональных зависимостей и построения на их основе ИЛМ ПО достаточно знать только логические ограничения. В рассматриваемом примере они таковы: 1) готовое изделие хранится

Формы справочных документов
Таблица 4.7 Справочник “ГОТОВАЯ ПРОДУКЦИЯ” Код изделия Наименование изделия Ед. измерения Нормативный запас

Определение типа связей
Каждая из введенных связей характеризуется групповым отношением экземпляров объектов типа 1:М (один – ко – многим). Ниже приводится обоснование этого утверждения. П

Канонический вид ИЛМ
Правила представления ИЛМ в каноническом виде кратко изложены в п. 4.3.1.7. Там же приведен пример использования неформального способа упорядочения ИнО по уровням иерархии. Хотя в рассматриваемом п

Организационная форма базы данных
Различают одно- и многопользовательские базы данных централизованного или распределенного хранения по узлам сети. Однопользовательские базы данных размещаю

Структура базы данных
Логическая структура базы данных соответствует структуре данных ИЛМ, реализуется средствами структур данных выбранного программного обеспечения (СУБД, электронные таблицы). Структура базы данных до

Администрирование базы данных
Для баз данных колективного пользования или хранимых на сетевом диске выполняется администрирование: создаются учетные записи групп и пользователей, определяются пароли учетных записей (рис. 4.15).

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

Обобщенный алгоритм
Обобщенный алгоритм обработки данных приложений представляется в виде технологических процессов обработки информации (табл. 4.17). Таблица 4.17. Описание технологического процесса обработк

Определение комплекса таблиц СУБД Microsoft Access
Таблицы СУБД Microsoft Access строятся на основе нормализованных отношений, получаемых в соответствии с алгоритмом построения семантической модели ПО, т.е. каждому отношению должна соответствовать

Описание полей
При назначении имен полей таблиц рекомендуется руководствоваться следующими правилами. 1. Имена полей назначать одинаковыми с сокращенными именами реквизитов (или атрибутов отношений).

Значение Описание
Нет Поле не индексировано (по умолчанию). Да Поле индексировано. (Допускаются Допускается повторение совпадения) значений индексного поля. Да Поле индек

Ссылочная целостность
В Microsoft Access понятиям Ссылочное (целевое) отношение и Ссылающееся отношение соответствуют понятия Главная таблица и Подтаблица. Главная таблица – э

Свойства экранных форм
При проектировании экранных форм задаются следующие свойства: · порядок сортировки записей в форме; · характер использования формы: изменение, удаление, добавление записей или вво

Рекомендации по проектированию экранных форм
1. Вид формы должен быть максимально приближен к макету документа, из которого вводятся исходные данные решаемой задачи. Это означает, что поля формы должны располагаться в

Запросы
Запросы являются самым распространенным программным средством, с помощью которого реализуются алгоритмы вычислительной обработки различного вида (выборка записей, удаление, корректировка значений п

Рекомендации по проектированию запросов
В курсовой работе для каждого запроса следует: · обосновать тип запроса (выборка, добавление, изменение и т.п.); · указать состав полей результирующей таблицы запроса на выборку и

Ведение нормативно-справочной информации
Ведение нормативно-справочной информации подразумевает: · Начальную загрузку таблиц базы данных. · Формирование сводных нормативов. · Корректировку нормативно-справочной

Интерфейс конечного пользователя
Интерфейса конечного пользователя может представляться с помощью: · Команд в составе главного или контекстного меню. · Панели инструментов. · Экранной формы кнопочного ти


1.1.Защита курсовой работы производится после полного завершения машинной части курсовой работы, составления отчета по курсовой работе и проверки ее преподавателем, осуществляющим руководство выпол

Курсовое проектирование в среде ms access
Учебное пособие Редактор С.А. Кабедева Лицензия ЛР N 020412 от 12.02.97 –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– Подп

Курсовая работа
Предметная область: Отдел сбыта готовой продукции Задача: Проверка обеспеченности плана отгрузки заданного изделия пл

Общие требования, предъявляемые к курсовой работе
Защита курсовой работы производится после полного завершения машинной части курсовой работы, составления отчета по курсовой работе и проверки ее преподавателем, осуществляющим руководство выполнени

После создания структур таблиц БД следует создать схему данных. Предварительно все таблицы БД должны быть закрыты. Создавать или изменять связи между открытыми таблицами нельзя.

Создание схемы данных начинается в окне База данных с выбора команды Сервис Схема данных . После выполнения указанной команды открывается два окна: Схема данных и Добавление таблицы, при этом активным является окно Добавление таблицы (рис. 12), в котором можно выбрать включаемые в схему данных таблицы.

Рис. 12. Два окна: Схема данных и Добавление таблицы

После выбора нужных таблиц в окне Схема данных будут представлены соответствующие таблицы со списком своих полей. При необходимости размеры окон таблиц можно изменить, чтобы список полей был виден полностью. Далее можно приступать к определению связей между таблицами.

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

Для создания связи типа 1:М между парой таблиц нужно выделить в главной таблице ключевое поле (название этого поля на схеме данных отображается полужирным шрифтом), по которому устанавливается связь и, удерживая нажатой кнопку мыши переместить указатель мыши на соответствующее поле подчиненной таблицы.

После выполнения указанных действий откроется окно Изменение связей (рис. 13). При этом в поле Тип отношения автоматически установится значение один-ко-многим.

Рис. 13. Окно Изменение связей

При создании связи по составному ключу нужно выделить все поля, входящие в ключ главной таблицы, и перетащить их на одно из полей связи в подчиненной таблице. При этом в окне Изменение связей необходимо для каждого поля составного ключа в главной таблице – Таблица/запрос выбрать соответствующее поле подчиненной таблицы, названной в данном окне – Связанная таблица/запрос .

Затем можно установить флажок . После установки этого флажка можно установить флажки каскадное обновление связанных полей и каскадное удаление связанных записей. Если флажок Обеспечение целостности данных не установлен, то при добавлении или удалении записей и изменении значений ключевых полей пользователь должен сам отслеживать непротиворечивость данных и целостность связей, что при больших объемах данных выполнить крайне трудно.

Обеспечение связной целостности данных означает, что при корректировке базы данных Access обеспечивает для связанных таблиц контроль за соблюдением следующих условий:

q В подчиненную таблицу не может быть добавлена запись с несуществующим в главной таблице значением ключа связи;

q В главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице;

q Нельзя изменить значение ключа связи в записи главной таблицы, если в подчиненной таблице имеются связанные с ней записи.

Если между таблицами в схеме данных установлена связь с параметрами обеспечения целостности, то при выполнении операции добавления и удаления записей и изменении значений ключевых полей Access автоматически отслеживает целостность этой связи. При попытке пользователя нарушить эти условия Access выводит соответствующее сообщение и не допускает выполнения операции. Так, например, если установлен только флажок Обеспечение целостности данных , то удалять данные из ключевого поля главной таблицы нельзя.

Установление между двумя таблицами связи типа 1:М или 1:1 и задание для этой связи параметров целостности данных возможно только при следующих условиях:

q Связываемые поля имеют одинаковый тип данных;

q Обе таблицы сохраняются в одной базе данных;

q Главная таблица связывается с подчиненной таблицей по первичному простому или составному ключу главной таблицы.

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

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

В режиме каскадного обновления связанных полей при изменении значения данных в поле связи главной таблицы Access автоматически изменит значения данных в соответствующем поле в подчиненных таблицах.

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

Образовавшаяся межтабличная связь отображается в окне Схема данных в виде линии, соединяющей два поля разных таблиц. При этом на линии связи у главной таблицы отображается символ - 1 , у подчиненной таблицы символ – бесконечность (¥ ) (рис. 14).

Рис. 14. Схема данных. Связь двух таблиц по ключевому полю Код поставщика.

Таким образом, смысл создания реляционных связей между таблицами состоит, с одной стороны, в защите данных, а с другой стороны - в автоматизации внесения изменений сразу в несколько таблиц при изменениях в одной таблице.

Таблицы в программе Access 2007 представляют связанную систему. Объединение позволяет вести обработку данных из нескольких таблиц. Для обработки формируются запросы – таблицы, в которых сведения из одной или нескольких таблиц сгруппированы нужным образом, иногда с производством необходимых вычислений. Запросы мы рассмотрим в последующих главах, а здесь поговорим о связях между таблицами.

Схема данных задаёт структуру базы данных. В ней представляются и запоминаются связи между таблицами. Эти связи используются при конструировании запросов и отчётов на основе нескольких таблиц. Схема данных отображает связи графически. Таблицы на схеме представлены в виде прямоугольников со списками полей. Если полей слишком много и они не помещаются в прямоугольник, то автоматически с правой стороны прямоугольника образуется полоса прокрутки , с помощью которой можно просмотреть весь список. Схема данных , используемая в нашей работе, представлена на рис. 6.10.

Рис. 2.11 Виды связей между таблицами: а) один-к-одному, б) один-ко-многим и в) многие-ко-многим

Связи в Access 2007 встречаются трёх видов: а) один-к-одному, б) один-ко-многим и в) многие-ко-многим, как это показано на рис. 2.11. Первый вид связи показывает, что одной записи в Таблице1 соответствует одна же запись в Таблице2 . Такой способ связи применяют, например, для двух таблиц, сделанных из одной, чтобы таблицы не были слишком громоздкими. Тогда Таблица2 – просто продолжение Таблицы1 . Чаще других встречаются связи один-ко-многим. Например, на одной кафедре работает много преподавателей. Поэтому между таблицами Кафедры и Преподаватели устанавливается именно такая связь.

Рис. 2.12 Вкладка Работа с базами данных

Связь типа многие-ко-многим в программе Access 2007 прямо не осуществляется. Чтобы создать такую связь, надо вставить промежуточную таблицу. Например, в нашей базе данных (рис. 6.10) предусмотрена промежуточная таблица Заказано , поскольку между таблицами Клиенты и Товары существует связь многие-ко-многим . Таблица Заказано позволяет избежать такой связи, которая в Access 2007 напрямую не осуществима.

Техника установления связи между таблицами включает в себя три действия: 1) вызов Схемы данных – окна, в котором и будет изображена схема, 2) добавление в окно схемы тех таблиц, между которыми надо установить связи и 3) протягивание связей между таблицами с приданием им необходимых свойств. Рассмотрим эти действия подробно.

Рис. 2.13 Диалоговое окно Добавление таблицы

Схему данных можно вызвать, когда нужные таблицы уже созданы. Для её вызова надо щёлкнуть по кнопке Схема данных на ленте вкладки Работа с базами данных (рис. 2.12). Появится окно Схема данных , пока пустое, и диалоговое окно Добавление таблицы , которое видно на рис. 2.13. С помощью окна Добавление таблицы в окно Схема данных помещают необходимые таблицы.

Рис. 2.14 Контекстное меню, вызванное правой кнопкой мыши, внутри окна Схема данных

Если по каким-то причинам окно Добавление таблицы не появилось, то надо щёлкнуть правой кнопкой в любом месте окна Схема данных . Появится контекстное меню (рис. 2.14). В нём надо щёлкнуть по надписи Добавить таблицу . Появится диалоговое окно Добавление таблицы , которое видно на рис. 2.13.

С появлением диалогового окна Добавление таблицы можно перенести внутрь окна Схема данных нужные таблицы. Мы ограничимся двумя таблицами: Кафедры и Преподаватели . Названия этих таблиц надо выделить, как показано на рис. 2.13, а потом сразу же щёлкнуть по кнопке Добавить . Точно так же поступают и с другими таблицами, которые надо поместить в Схему данных . Окно Добавление таблицы после добавления нужных таблиц следует закрыть. В нашем примере прямоугольники, обозначающие обе нужные нам таблицы, появятся в Схеме данных , как это видно на рис. 2.15.

Обозначения таблиц внутри окна Схема данных содержат список всех полей данной таблицы, причём слева от имени ключевого поля (или ключевых, если их несколько) расположен значок ключ. Обозначения таблиц можно передвигать мышью, ухватив за заголовок таблицы. Можно изменять и размеры прямоугольников, обозначающих таблицы. Для этого надо подвести указатель мыши к одной из границ прямоугольника. Появится двунаправленная стрелка: . Захватив такую стрелку мышью, можно передвинуть границу прямоугольника в любое место, тем самым, изменив его размер.

Рис. 2.15 Законченная Схема данных со связью между таблицами

Когда прямоугольники обозначений таблиц размещены внутри окна Схемы данных , можно приступить к установлению связей между таблицами. Связывают одноимённые поля. В одной из таблиц используют для связи обычно ключевое поле. Та таблица, у которой поле связи ключевое, считается главной. С её стороны связь обозначена 1 . Со стороны связаной таблицы связь обозначена ¥ . Так устанавливается связь Один-ко-многим .

Рис. 2.16 Диалоговое окно Изменение связей

Техника соединения таблиц связями проста: надо щёлкнуть соединяемое поле главной таблицы. Оно выделится. Не отпуская кнопку мыши, надо вести линию к одноимённому полю вспомогательной таблицы. Соединения сначала не произойдёт, а возникнет диалоговое окно Изменение связей (рис. 2.16). Окно помогает утвердить характер связи и настроить целостность данных обеих таблиц. В окне надо убедиться, что связь произошла по одноимённым полям, а затем щёлкнуть по окошечку надписи . В окошечке появится флажок: ü. После этого надо такие же флажки выставить ещё в двух окошечках, находящихся ниже. Таким образом, задаются свойства связи. Свойство Обеспечение целостности данных означает, что удалять данные из ключевого поля главной таблицы нельзя. А свойства Каскадное обновление связанных полей и Каскадной удаление связанных записей – соответственно, что операции редактирования и удаления данных в ключевом поле главной таблицы разрешены, но сопровождаются автоматическим изменениями в связанной таблице. Завершается создание связи щелчком по кнопке [Создать] . Нужная связь появится (рис. 2.15).

Стоит заметить, что в случае, если невозможно осуществить связь с обеспечением целостности данных, например, если проведена связь между полями с различной информацией, появляется окно, изображенное на рис. 2.17.

Рис. 2.17 Окно с предупреждением о невозможности создания связи


Схема данных

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

В схеме данных нормализованной БД, которая основана на отношениях «один-к-одному» и «один-ко-многим» между таблицами, для связей этих таблиц по уникальному индексу главной таблицы или первичному ключу могут быть установлены параметры обеспечения связной целостности .

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

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

Связи в схеме данных могут быть установлены для любой пары таблиц с одинаковым полем, которое позволяет объединять данные таблицы.

Схемы данных отображаются в области навигации в окне БД лишь в проектах Access, которые работают с базами данных сервера. Чтобы отобразить схему данных в БД Access используют команду Схема данных , размещенную в группе Отношения на вкладке Работа с базами данных .

Пример 1

Рассмотрим модель данных предметной области «Поставка товаров» (рисунок 1). Схема данных Access, построенная для данной модели данных, представлена на рисунке 2.

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

Особенности схемы данных

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

С помощью связей между таблицами выполняется объединение данных разных таблиц, которое необходимо для решения многих задач введения, корректировки и просмотра данных, получения сведений по запросам и выведения отчетов. Связи таблиц устанавливаются соответственно проекту логической структуры рассматриваемой базы данных (рисунок 2) и отображаются на схеме данных Access.

Схема данных, кроме выполнения роли средства графического отображения логической структуры базы данных, активно используется в процессе обработки данных. С помощью связей, которые установлены в схеме данных, разработчик освобождается от необходимости каждый раз сообщать системе о наличии какой-либо связи. Один раз указав связи в схеме данных, они будут автоматически использоваться системой. Создание схемы данных предоставляет возможность упростить конструирование многотабличных отчетов, запросов, форм, а также обеспечивает поддержание целостности взаимосвязанных данных при корректировке и внесении данных в таблицы.