Ahpub - Компьютер Шаг за Шагом

В чем состоит особенность поля типа ole. Тип данных мастер подстановок. Текстовые поля произвольной длины

Использование данных типа Поле объекта OLE (OLE Object)

Поле объекта OLE является средством, позволяющим установить связь с объектами другого приложения или внедрить объект в БД. Объектами могут быть тексты простые и форматированные, рисунки, диаграммы, файлы звукозаписи (.WAV), музыка в формате MIDI (музыкально инструментальный цифровой интерфейс), файлы анимации (.FLI, .МММ), видеоклипы (.AVI), электронные таблицы из других приложений, поддерживающих это средство. Программное приложение Access, поддерживая OLE, полностью интегрируется с другими приложениями пакета Microsoft Office.

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

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

Например, в таблице ЧАСТОТА ЛЕММ добавим поле ЗВУК, которое должно содержать запись произношения леммы слова в формате (.WAV). Если на вашем диске имеются звуковые файлы с произношением отдельных слов из таблицы ЧАСТОТА_ЛЕММ, можно связать каждый такой звуковой файл с полем ЗВУК таблицы. Для этого откроем таблицу ЧАСТОТА_ЛЕММ и отсортируем ее по полю лемма в возрастающем порядке (нажать стрелку возле имени поля ЛЕММА и затем выбрать Сортировка от А до Я). Сортировка производится для удобства поиска нужного слова. Затем выберем слово, для которого имеется звуковой файл, например "бабушка". Далее следует поставить курсор на поле ЗВУК записи с ЛЕММА = бабушка и нажать правую кнопку мыши. Откроется выпадающее меню, в котором нужно выбрать пункт Вставить объект. Откроется окно, в котором нужно нажать кнопку Создать из файла и затем выбрать звуковой файл на диске с произношением слова "бабушка". В поле ЗВУК появится надпись Package. Теперь если дважды нажать на эту надпись, будет вызвана программа воспроизведения звуковых файлов (как правило, это проигрыватель Windows Media) и прозвучит слово "бабушка". Такие же действия следует выполнить со всеми словами, для которых имеются звуковые файлы. В результате проделанной операции слова таблицы, для которых можно прослушать их звучание, будут отмечены соответствующим образом (рис. 14.9).

Рис. 14.9.

Использование данных типа Гиперссылка

Специальный тип данных Гиперссылка (англ. Hyperlink ) позволяет хранить гиперссылки в полях таблиц БД Access. Поля с типом Гиперссылка используются для перехода к объектам той же самой или другой БД Access, к документам, созданным в различных приложениях Microsoft Office и расположенным на локальных или сетевых дисках, к страницам Web-серверов и документам других ресурсов в Интернете. При щелчке мышью по гиперссылке осуществляется переход к документу, который открывается создавшим его приложением.

Для прикрепления гиперссылок к данным БД нужно выполнить следующую последовательность действий. Добавим в таблицу ЧАСТОТА_ ЛЕММ поле СЛОВАРЬ, которое будет содержать гиперссылки на словарные статьи в Интернете с дефинициями для данной лексемы.

В режиме Конструктор зададим тип этого поля = Гиперссылка.

Будем искать в Интернете значения устаревших и не совсем понятных современному читателю слов из сказки, например "жерновец", "боярин", "кочеток".

Для первого слова ("жерновец") в Интернете удалось найти только рисунок с изображением деталей ручной мельницы, среди которых имеется два малых жернова, предположим, что это и есть "жерновцы" (club- kaup.narod.ru/rec/arcussr/tablell2.jpg). Слово "жерновцы" образовано как диминутив от слова жернов согласно традиции русского словообразования. Для второго слова – "боярин" имеется словарная статья в Викисловаре (ru.wiktionary.org/wiki/боярин). Третье слово, кочеток, нашлось на вебсайте "Словари и энциклопедии Академик" в электронной версии Словаря Ушакова (dic.academic.ru/dic.nsf/ushakov/842550).

Каждую найденную ссылку нужно скопировать в поле СЛОВАРЬ таблицы ЧАСТОТАЛЕММ. Впоследствии при нажатии на ссылку в этом поле запускается программа Интернет-браузера, которая откроет соответствующую веб-страницу в отдельном окне браузера. Вид таблицы базы данных Access с вставленными гиперссылками показан на рис. 14.10.

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

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

Поле объекта OLE

Поле объекта OLE (Object Linking and Embedding) – последний выбираемый из списка тип поля. Он имеет всего два свойства: подпись и параметр «обязательное поле». Поля данного типа не хранят информацию как таковую, а содержат ссылки на объекты, которые могут быть включены в БД с использованием OLE-протокола обмена данными. Такими объектами могут быть, например, графические файлы.

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

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

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

Адрес – это текст, задающий путь и имя файла для открываемого документа. Путь может представлять собой путь к файлу, записанному на жестком диске, являться адресом в формате UNC или адресом URL в Интернете.

Для вставки адреса в поле можно использовать команду Гиперссылка в меню Вставка.

Многотабличные базы данных. Отношения между таблицами

Реляционные базы данных состоят из нескольких таблиц, связь между которыми устанавливается с помощью совпадающих полей. Каждая запись в таблицах идентифицирует один объект. Отношение между объектами определяет отношение между таблицами. Существует 4 типа отношений:

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

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

3. Отношение «многие ко многим» возникает между двумя таблицами в тех случаях, когда:

Одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы;

Одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы.

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

В большинстве случаев любые две таблицы связаны отношением «один – ко многим».

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

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

1. Таблица тАбитуриенты:

КодАб является ключевым полем.

2. Таблица пересечения тСвязьАбВУЗ:

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

Рисунок 12.6. Схема данных

Чтобы определить связи, необходимо использовать команду Сервис->Схема данных (кнопка

). Если связь определяется впервые в базе данных, то Access откроет пустое окно Схема данных, а затем выведет на экран окно диалога Добавление таблицы. В этом окне необходимо выделить нужные таблицы и нажать кнопку Добавить. В нашем случае в окно схемы данных надо добавить все три таблицы. Кнопка Закрыть закрывает окно диалога Добавление таблицы (данное окно можно вызвать по нажатию кнопки

). После этого окно Схемы данных должно выглядеть примерно так, как показано на рис. 3 (кроме линий соединения). Чтобы установить связь между таблицами твузы и тСвязьАбвуз, надо выделить поле Кодвуза в таблице твузы (щелкнуть левой кнопкой «мыши»), перетащить и опустить его на поле Кодвуза в таблице тСвязьАбвуз. Аналогично устанавливается связь между двумя другими таблицами.

Когда вы отпустите кнопку мыши, Microsoft Access откроет окно диалога Связи, представленное на рис. 12.7.

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

После установки флажка Обеспечение целостности данных, Access делает доступными еще два флажка: Каскадное обновление связанных полей и Каскадное удаление связанных записей. При установленном флажке Каскадное обновление связанных полей Microsoft Access обновляет все значения чужих ключей в дочерних таблицах (то есть в таблицах на стороне отношения «многие» при связи «один ко многим») при изменении значения первичного ключа в родительской таблице, которая находится на стороне отношения «один» при связи «один ко многим». Если же вы установите флажок Каскадное удаление связанных записей, Microsoft Access удалит дочерние строки (связанные строки в дочерних таблицах) при удалении родительской строки (связанная строка в родительской таблице). Установите флажок Каскадное обновление связанных полей, чтобы при изменении кода вуза Access автоматически обновлял записи в таблице тСвязьАбвуз.

После нажатия кнопки Создать Access создаст связь и нарисует линию между двумя таблицами, указывающую на наличие связи между ними. Заметьте: когда вы просите обеспечить целостность данных, Access изображает на конце линии у таблицы, находящейся на стороне отношения «один», цифру 1, а на другом конце у таблицы со стороны отношения «многие» – символ бесконечности. Чтобы удалить связь, щелкните по ее линии и нажмите клавишу Del. Если вы хотите отредактировать или изменить существующую связь, дважды щелкните по соответствующей линии, чтобы снова открыть окно диалога Связи.

OLE (Object Linking and Embedding)

OLE (Object Linking and Embedding) - протокол связывания и встраивания объектов. Позволяет вставлять в документ или объект одного приложения (клиента OLE) объекты (OLE-объекты) других приложений, поддерживающих протокол OLE (серверов OLE). В Access объекты OLE могут быть вставлены, например, в поле, форму или отчет.

OLE (Object Linking and Embedding) - протокол для связывания и внедрения объектов. Позволяет использовать в формах и отчетах данные различных форматов - например, графику или документы, созданные в других программах.

OLE (англ. Object Linking and Embedding, произносится как oh-lay [олэй]) — технология связывания и внедрения объектов в другие документы и объекты, разработанные корпорацией Майкрософт.
OLE позволяет передавать часть работы от одной программы редактирования к другой и возвращать результаты назад. Например, установленная на персональном компьютере издательская система может послать некий текст на обработку в текстовый редактор, либо некоторое изображение в редактор изображений с помощью OLE-технологии.
Основное преимущество использования OLE (кроме уменьшения размера файла) в том, что она позволяет создать главный файл, картотеку функций, к которой обращается программа. Этот файл может оперировать данными из исходной программы, которые после обработки возвращаются в исходный документ.
OLE используется при обработке составных документов (англ. compound documents), может быть использована при передаче данных между различными несвязанными между собой системами посредством интерфейса переноса (англ. drag-and-drop), а также при выполнении операций с буфером обмена. Идея внедрения широко используется при работе с мультимедийным содержанием на веб-страницах (пример — Веб-ТВ), где используется передача изображения, звука, видео, анимации в страницах HTML (язык гипертекстовой разметки) либо в других файлах, также использующих текстовую разметку (например, XML и SGML). Однако, технология OLE использует архитектуру «толстого клиента», то есть сетевой ПК с избыточными вычислительными ресурсами. Это означает, что тип файла либо программа, которую пытаются внедрить, должна присутствовать на машине клиента. Например, если OLE оперирует таблицами Microsoft Excel, то программа Excel должна быть инсталлирована на машине пользователя.

OLE 1.*
OLE 1.0 был выпущен в 1990 году на основе технологии DDE (Dynamic Data Exchange), использовавшейся в более ранних версиях операционной системы Microsoft Windows. В то время как технология DDE была сильно ограничена в количестве и методах передачи данных между двумя работающими программами, OLE имел возможность оперировать активными соединениями между двумя документами либо даже внедрить документ одного типа в документ другого типа.
OLE сервера и клиенты взаимодействуют с системными библиотеками при помощи таблиц виртуальных функций (англ. virtual function tables, VTBL). Эти таблицы содержат указатели на функции, которые системная библиотека может использовать для взаимодействия с сервером или клиентом. Библиотеки OLESVR.DLL (на сервере) и OLECLI.DLL (на клиенте) первоначально были разработаны для взаимодействия между собой с помощью сообщения WM_DDE_EXECUTE, предоставляемого операционной системой.
OLE 1.1 позднее развился в архитектуру COM (component object model) для работы с компонентами программного обеспечения. Позднее архитектура COM была преобразована и стала называться DCOM.
Когда объект OLE помещен в буфер обмена информацией, он сохраняется в оригинальных форматах Windows (таких как bitmap или metafile), а также сохраняется в своём собственном формате. Собственный формат позволяет поддерживающей OLE программе внедрить порцию другого документа, скопированного в буфер, и сохранить её в документе пользователя.

OLE 2.0
Следующим эволюционным шагом стал OLE 2.0, сохранивший те же цели и задачи, что и предыдущая версия. Но OLE 2.0 стал надстройкой над архитектурой COM вместо использования VTBL. Новыми особенностями стали автоматизация технологии drag-and-drop, in-place activation и structured storage.

Ключевые слова: база данных access 2010; бд access; субд access; базы данных access; access пример; программирование access; готовая база данных; создание база данных; база данных СУБД; access курсовая; база данных пример; программа access; access описание; access реферат; access запросы; access примеры; скачать бд access; объекты access; бд в access; скачать субд access; база данных ms access 2003; субд access реферат; субд ms access; преимущества access; базу данных; скачать базу данных на access; базы данных; реляционная база данных; системы управления базами данных; курсовая база данных; скачать базу данных; база данных access скачать; базы данных access скачать; реферат база данных; создание СУБД; скачать паспортную базу данных; базой данных; нормализация данных; примеры СУБД; база данных примеры; курсовые работы по СУБД; нормализация; базе данных; структура БД; пример БД; база запросов; учебная база данных; проектирование БД; данных; описание БД; субд реферат; создать БД; база данных по; использование БД; курсовая работа база данных; готовая; использование СУБД; таблица БД; база данных 2008 скачать; базу

Поля объекта OLE

MS Access позволяет хранить в таблицах изображения и другие двоичные данные (например, электронную таблицу MS Excel, документ MS Word, рисунок звукозапись). Для этих целей служит тип данных Поле объекта OLE. Фактический объем данных, который Вы можете ввести в поле данного типа, определяется объемом жесткого диска Вашего компьютера (до 1 Гигабайта).

Тип данных мастер подстановок

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

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

Создание структуры таблицы

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

В окне конструктора таблицы в столбце Имя поля введите КодЗаказа .

Нажмите клавишу Tab или Enter , чтобы перейти в столбец Тип данных. При этом обратите внимание, что в нижней части окна диалога появляется информация в разделе "Свойства поля”.

В столбце Тип данных появилось значение Текстовый. Нажмите на кнопку раскрытия списка в правой части прямоугольника, и Вы увидите список, содержащий все типы данных. Из этого списка с помощью мыши или клавишами вверх и вниз выберите значение Счетчик и нажмите на клавишу Tab для перехода в столбец Описание. Столбец Описание представляет собой пояснение, которое Вы даете своим полям. Когда Вы в будущем будете работать с данной таблицей, это описание будет появляться в нижней части экрана MS Access всякий раз, когда Вы окажетесь в поле КодЗаказа , и напомнит Вам назначение данного поля.

Введите поясняющий текст в столбец Описание и нажмите клавишу Tab или Enter , чтобы перейти к вводу информации о следующем поле.

Аналогичным образом введите описание всех полей таблицы.

Завершив ввод структуры таблицы, сохраните ее, выполнив команду Файл/Сохранить.

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

Для отображения содержимого поля в виде значка, представляющего файл с документом, в окне (рис. 3.20) установите флажок В виде значка (Display As Icon). Значок может быть использован для представления связанного объекта.

Ввод логически связанных записей

Введем несколько логически взаимосвязанных записей в таблицы группа и СТУДЕНТ.

Объекты ГРУППА и СТУДЕНТ связаны одно-многозначными отношениями, но, пока не создана схема данных, в которой устанавливаются связи между таблицами, система не может контролировать логическую взаимосвязь вводимых данных. Поэтому для получения целостной базы, в которой все записи подчиненной таблицы имеют логически связанную с ней главную запись, пользователю необходимо самому отслеживать логические связи записей. При вводе подчиненной записи в таблицу студент нужно проверять наличие записи в главной таблице группа с ключом, значение которого совпадает со значением поля связи (внешнего ключа) вводимой подчиненной записи. То есть при добавлении записи о студенте группы 221 необходимо, чтобы группа с этим номером уже была представлена в таблице ГРУППА.

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

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

Использование поля со списком при вводе записей

Одним из способов ввода подчиненных записей только при наличии связанной записи в главной таблице может быть использование в подчиненной таблице поля со списком, включающим значения поля главной таблицы. Создадим в таблице студент для поля НГ (номер группы) поле со списком, построенным на основе ключа таблицы группа. Для этого откроем таблицу I студент в режиме конструктора. Установим курсор в поле НГ на столбце Тип данных, откроем список и выберем строку Мастер подстановок (см. рис. 3.5). В открывшемся окне мастера Создание подстановки установим флажок Объект "столбец подстановки" будет использовать значения из таблицы или запроса . При этом будет построен список на основе значений из таблицы.

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

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

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

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

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

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

Определение поля со списком с такими параметрами приводит к отображению в поле таблицы КП вместо значений ключевого поля значений второго поля списка - поля НП (наименование предмета). На рис. 3.30 показано, как в таблице ИЗУЧЕНИЕ отображаются поля со списком Код предмета и Табельный преподавателя при нулевой ширине присоединенного столбца.

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

Внимание!

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

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

Схема данных в Access

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

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

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

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

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

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

Связи между таблицами

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

Одно-многозначные (1:М) или одно-однозначные (1:1) связи

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

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

Замечание

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

Связи-объединения

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

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

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

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

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

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

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

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

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

Загрузка...