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

Как в аксессе связать таблицы


Установка связей между таблицами БД Access 2007

2.4. Microsoft Access 2007

2.4.3. Установка логических связей в БД Access 2007

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

Для установления связей используем ключевые поля: КодГруппы, КодСтудентов и КодДисциплины. Например, между первичным ключом (КодГруппы) tables Группы студентов и вторичным ключом (КодГруппы) tables Студенты устанавливаем связь один - ко - многим.

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


Рис. 1.

В окне Добавление таблиц необходимо выделить имена таблиц и нажать кнопку Добавить, при этом в окне "Схема данных" появятся все tables (рис. 2). После этого необходимо закрыть окно диалога.


Рис. 2.

Далее необходимо установить связи между табл. в окне Схема данных. Для этого в окне Схема данных необходимо отбуксировать (переместить) поле КодГруппы из таблицы Группы студентов на соответствующее поле tables Студенты, в результате этой операции появится окно "Изменение связей" (рис. 3) .


Рис. 3.

В появившемся окне диалога "Изменение связей" (рис. 3) необходимо установить флажки: "Обеспечить целостность данных", "каскадное обновление связанных полей" и "каскадное удаление связанных записей", убедиться в том, что установлен тип отношений один-ко-многим и нажать кнопку Создать.

В окне Схема данных появится связь один-ко-многим между таблицами Группы студентов и Студенты. Аналогичным образом надо связать поля КодСтудента в таблицах Студенты и Успеваемость, а затем поля КодДисциплины в таблицах Успеваемость и Дисциплины. В итоге получим Схему данных, представленную на рисунке 4.


Рис. 4.

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

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

Далее >>> Раздел: 2.4.4. Заполнение таблиц базы данных Access 2007

Управление связанными таблицами - Доступ

Связь с внешними источниками данных и создание решений на основе различных наборов данных - сильная сторона Office Access. Диспетчер связанных таблиц - это центральное место для просмотра и управления всеми источниками данных и связанными таблицами в базе данных Access. Время от времени вам может потребоваться обновить, повторно связать, найти, изменить или удалить связанные таблицы из-за изменений в расположении источника данных, имени таблицы или схемы таблицы. Например, вы переключаетесь из тестовой среды в производственную, поэтому вам необходимо изменить расположение источника данных.Если требования к вашему решению изменились, вы также можете добавлять или удалять связанные таблицы.

Примечание В зависимости от имеющейся у вас версии Access диалоговое окно «Диспетчер связанных таблиц » работает по-разному. В Microsoft 365 вы можете использовать это диалоговое окно для обновления, повторного связывания, добавления, редактирования, поиска и удаления связанных таблиц, но вы не можете экспортировать информацию в Excel. В Access 2016 и более поздних версиях диалоговое окно намного проще, но вы можете экспортировать информацию в Excel.

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

Прежде чем начать

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

  1. Обновите источник данных, чтобы обеспечить успешные ссылки и выявить проблемы.

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

  3. Повторно связать отдельные таблицы со статусом Failed . Access автоматически обновляет статус, указывая на успех или неудачу.

  4. Повторяйте шаги с 1 по 3, пока все проблемы не будут устранены.

Верх страницы

Обновить источник данных и связанные с ним таблицы

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

  1. Выберите Внешние данные > Диспетчер связанных таблиц .

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

  2. В диалоговом окне «Диспетчер связанных таблиц » выберите источник данных или отдельные связанные таблицы.

    При выборе источника данных выбираются все связанные с ним таблицы. Разверните (+) записи в источнике данных , чтобы выбрать отдельные связанные таблицы.

  3. Выберите Обновить .

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

  5. Убедитесь, что столбец Status отображается (возможно, вам придется прокрутить в сторону), а затем проверьте его, чтобы увидеть результаты:

    • Успех Связанные таблицы успешно обновлены.

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

  6. Снова выберите Обновить до тех пор, пока вы не исправите каждую сбойную связанную таблицу и в столбце Состояние не отобразится « Успех ».

Верх страницы

Повторно связать источник данных или связанную таблицу

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

  1. Выберите Внешние данные > Диспетчер связанных таблиц .

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

  2. В диалоговом окне «Диспетчер связанных таблиц » выберите источник данных или отдельные связанные таблицы.

    Может потребоваться развернуть (+) записи в столбце Источник данных .

  3. Выберите Relink .

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

  5. Убедитесь, что столбец Status отображается (возможно, вам придется прокрутить в сторону), а затем проверьте его, чтобы увидеть результаты:

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

  7. Снова выберите Relink , пока вы не исправите все связанные с ошибками таблицы и в столбце Status отобразится « Success ».

Верх страницы

Найти связанную таблицу

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

  1. Введите текст в поле Search .

    Access выполняет поиск в столбцах Имя источника данных и Информация об источнике данных , чтобы найти совпадение.

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

  2. Для сброса дисплея снимите флажок Search .

Верх страницы

Редактировать источник данных

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

  1. Выберите Внешние данные > Диспетчер связанных таблиц .

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

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

  3. Измените информацию в диалоговом окне Edit Link .

    Редактирование информации об источнике данных Excel

  4. Выбрать Готово .

Верх страницы

Добавить источник данных и связанные таблицы

Вы можете добавить следующие типы источников данных: Access, SQL (сервер и Azure), Excel или Custom (текст, Microsoft Dynamics, список ShaePoint, ODBC).

Совет Для разработчиков Access, которые вводят строки подключения в коде VBA, рассмотрите возможность добавления и редактирования строки подключения из диалогового окна Linked Table Manager вместо того, чтобы изменять код напрямую или писать сложный код, который автоматически изменяет строки подключения.

  1. Выберите Внешние данные > Диспетчер связанных таблиц .

  2. В диалоговом окне Диспетчер связанных таблиц выберите Добавить .

  3. Чтобы улучшить обнаружение и смысл, введите имя в поле Отображаемое имя . Отображаемое имя по умолчанию - это тип источника данных.

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

  4. Выполните одно из следующих действий:

    • Выберите SQL (сервер / Azure) , выберите Далее , а затем введите имя для входа в SQL Server и информацию DSN.Дополнительные сведения см. В разделах Импорт данных в базе данных SQL Server или связывание с ними и Связывание или импорт данных из базы данных SQL Server Azure.

    • Выберите Access , выберите Next , а затем введите имя файла и пароль в диалоговом окне Добавить новую ссылку . Дополнительные сведения см. В разделе Импорт данных в другой базе данных Access или создание ссылок на них.

    • Выберите Excel , а затем введите имя файла в диалоговом окне Добавить новую ссылку .Дополнительные сведения см. В разделе Импорт данных в книге Excel или создание ссылок на них.

    • Выберите Custom (Text, Dynamics, SharePoint List, ODBC) , а затем введите путь к источнику данных и строку подключения в диалоговом окне Добавить новую ссылку . Дополнительные сведения см. В разделах Синтаксис строки подключения и Справочник по строкам подключения.

  5. Выбрать Закрыть .

Верх страницы

Удалить источник данных или связанную таблицу

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

  1. Выберите Внешние данные > Диспетчер связанных таблиц .

  2. В диалоговом окне Диспетчер связанных таблиц выберите один или несколько источников данных или связанных таблиц.

    Может потребоваться развернуть (+) записи в столбце Источник данных .

  3. Выберите Удалить .

  4. Когда вам будет предложено подтвердить, выберите Да .

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

Верх страницы

См. Также

Экспорт информации о связанных источниках данных в Excel

Введение в импорт, связывание и экспорт данных в Access

Администрирование источников данных ODBC

.

Импорт или связывание данных в другой базе данных Access

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

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

Что ты хочешь сделать?

Понимание импорта и связывания данных из другой базы данных Access

Импортировать данные из другой базы данных Access

Ссылка на данные в другой базе данных Access

Сведения об импорте и связывании данных из другой базы данных Access

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

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

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

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

Импорт данных из другой базы данных Access

Процесс импорта данных состоит из следующих общих шагов:

Следующие шаги объясняют, как выполнять каждое действие.

Подготовка к операции импорта

  1. Найдите исходную базу данных и укажите объекты, которые вы хотите импортировать.

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

  2. Если вы впервые импортируете данные из базы данных Access, обратитесь к следующей таблице за некоторыми полезными советами.

    Элемент

    Описание

    Несколько объектов

    Вы можете импортировать несколько объектов за одну операцию импорта.

    Новый объект

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

    Импорт связанной таблицы

    Если исходная таблица (например, Employees1 в базе данных Sales) на самом деле является связанной таблицей (таблицей, которая связана с таблицей Employees в базе данных Payroll), текущая операция импорта заменяется операцией связывания.В конце операции вы увидите связанную таблицу (с именем, например, Employees1), которая ссылается на исходную исходную таблицу (Сотрудники в базе данных Payroll).

    Пропуск полей и записей

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

    Отношения

    Вы можете выбрать импорт отношений между исходными таблицами.

    Определение таблицы

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

    Поля поиска

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

    Запросы

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

  3. Закройте исходную базу данных.Убедитесь, что ни один пользователь не открыл его в монопольном режиме.

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

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

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

    Операция импорта не перезаписывает и не изменяет какие-либо существующие таблицы или объекты. Если объект с тем же именем, что и исходный объект, уже существует в целевой базе данных, Access добавляет номер (1, 2, 3 и т. Д.) К имени объекта импорта. Например, если вы импортируете таблицу Issues в базу данных, в которой уже есть таблица с именем Issues, импортированная таблица будет называться Issues1. Если имя Issues1 уже используется, новая таблица будет называться Issues2 и так далее.

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

Импортировать данные

  1. Местоположение мастера импорта немного отличается в зависимости от вашей версии Access.Выберите шаги, соответствующие вашей версии Access:

    • Если вы используете последнюю версию подписки Microsoft 365 Access, на вкладке Внешние данные в группе Импорт и связывание щелкните Новый источник данных > Из базы данных > Access .

    • Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке External Data в группе Import & Link щелкните Access .

  2. Откроется мастер Get External Data - Access Database для импорта и связывания.

  3. В текстовом поле Имя файла введите имя исходной базы данных или щелкните Обзор , чтобы открыть диалоговое окно Открыть файл .

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

    Откроется диалоговое окно Импорт объектов .

  5. В диалоговом окне Импорт объектов на вкладке Таблицы выберите таблицы, которые нужно импортировать. Если вы хотите импортировать запросы, щелкните вкладку Queries и выберите запросы, которые вы хотите импортировать.

    Чтобы отменить выбранный объект, щелкните объект еще раз.

  6. Щелкните Параметры , чтобы указать дополнительные настройки.

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

    Элемент

    Описание

    Отношения флажок

    Выберите, чтобы импортировать отношения между выбранными таблицами.

    Меню и панели инструментов флажок

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

    Параметры импорта / экспорта флажок

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

    Группы панелей навигации флажок

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

    Определение и данные кнопка выбора

    Выберите, чтобы импортировать структуру и данные всех выбранных таблиц.

    Только определение кнопка выбора

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

    As Queries option button

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

    В виде таблиц , кнопка выбора

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

  7. Щелкните ОК , чтобы завершить операцию.

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

Ссылка на данные в другой базе данных Access

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

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

Процесс связывания с данными в другой базе данных Access состоит из следующих общих шагов:

Следующие шаги объясняют, как выполнять каждое действие.

Подготовка к связыванию таблиц в базе данных Access

  1. Найдите исходную базу данных.

    Формат файла может быть MDB, MDE, ACCDB или ACCDE.Если исходная база данных защищена паролем, вам будет предложено ввести пароль во время операции связывания.

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

    Элемент

    Описание

    Несколько объектов

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

    Связанные таблицы как источник

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

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

    Новый или существующий стол

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

    Отношения

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

    Поля поиска

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

  3. Закройте исходную базу данных. Убедитесь, что ни один другой пользователь не открыл базу данных в монопольном режиме.

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

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

    Операция не перезаписывает и не изменяет какие-либо существующие таблицы или объекты. Если объект с тем же именем, что и исходный объект, уже существует в целевой базе данных, Access добавляет номер (1, 2, 3 и т. Д.) К имени связанной таблицы. Например, если вы свяжетесь с таблицей Issues из базы данных, в которой уже есть таблица с именем Issues, связанная таблица будет называться Issues1. Если имя Issues1 уже используется, новая таблица будет называться Issues2 и так далее.

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

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

Ссылка на данные

  1. Расположение мастера ссылок немного отличается в зависимости от вашей версии Access.Выберите шаги, соответствующие вашей версии Access:

    • Если вы используете последнюю версию подписки Microsoft 365 Access, на вкладке Внешние данные в группе Импорт и связывание щелкните Новый источник данных > Из базы данных > Access .

    • Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке External Data в группе Import & Link щелкните Access .

  2. Откроется мастер Get External Data - Access Database для импорта и связывания.

  3. В текстовом поле Имя файла введите имя исходной базы данных или щелкните Обзор , чтобы открыть диалоговое окно Открыть файл .

  4. Щелкните Связать с источником данных, создав связанную таблицу , а затем щелкните ОК .

    Откроется диалоговое окно Link Tables .

  5. В диалоговом окне Link Tables выберите таблицы, на которые вы хотите создать ссылку.

    Чтобы отменить выбор, щелкните таблицу еще раз.

  6. Щелкните ОК , чтобы завершить операцию.

    Access создает связанные таблицы.

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

Что еще я должен знать?

Верх страницы

.

Определение отношений между таблицами в базе данных Access - Office

  • Читать 12 минут
  • Применимо к:
    Access 2013, Access 2010, Microsoft Office Access 2007, Microsoft Office Access 2003

В этой статье

Примечание

Office 365 профессиональный плюс переименовывается в Microsoft 365 Apps для предприятий .Дополнительные сведения об этом изменении см. В этом сообщении в блоге.

Оригинальный номер базы знаний: 304466

Примечание

Новичок: требуется знание пользовательского интерфейса на однопользовательских компьютерах. Эта статья относится только к базе данных Microsoft Access (.mdb или .accdb).

Сводка

В этой статье описывается, как определять отношения в базе данных Microsoft Access. В статье представлены следующие темы:

  • Что такое отношения таблиц?
  • Виды связей таблиц
    • Отношения "один ко многим"
    • Отношения многие-ко-многим
    • Индивидуальные отношения
  • Как определить отношения между таблицами
    • Как определить отношение «один ко многим» или «один к одному»
    • Как определить отношение «многие ко многим»
  • Ссылочная целостность
  • Каскадное обновление и удаление
  • Типы соединений

Что такое отношения таблиц?

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

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

Чтобы гарантировать синхронизацию данных, вы можете обеспечить ссылочную целостность между таблицами. Отношения ссылочной целостности помогают убедиться, что информация в одной таблице соответствует информации в другой. Например, каждый заголовок в таблице «Заголовки» должен быть связан с конкретным издателем в таблице «Издатели».Заголовок не может быть добавлен в базу данных для издателя, которого нет в базе данных.

Логические отношения в базе данных позволяют эффективно запрашивать данные и создавать отчеты.

Виды связи таблиц

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

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

Отношения "один ко многим"

Отношения «один ко многим» - наиболее распространенный вид отношений. При таком виде отношений строка в таблице A может иметь много совпадающих строк в таблице B. Но строка в таблице B может иметь только одну совпадающую строку в таблице A. Например, таблицы «Издатели» и «Заголовки» имеют отношения "один ко многим". То есть каждый издатель выпускает много названий. Но каждое название принадлежит только одному издателю.

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

В окне отношения в Access сторона первичного ключа отношения «один ко многим» обозначается числом 1. Сторона внешнего ключа отношения обозначается символом бесконечности.

Отношения "многие ко многим"

В отношении «многие ко многим» строка в таблице A может иметь много совпадающих строк в таблице B, и наоборот. Вы создаете такое отношение, определяя третью таблицу, которая называется таблицей соединений. Первичный ключ соединительной таблицы состоит из внешних ключей из таблицы A и таблицы B.Например, таблица «Авторы» и таблица «Заголовки» имеют отношение «многие ко многим», которое определяется отношением «один ко многим» от каждой из этих таблиц к таблице «TitleAuthors». Первичный ключ таблицы «TitleAuthors» представляет собой комбинацию столбца au_ID (первичный ключ таблицы «Авторы») и столбца title_ID (первичный ключ таблицы «Заголовки»).

Индивидуальные отношения

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

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

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

В Access сторона первичного ключа взаимно-однозначного отношения обозначается символом ключа. Сторона внешнего ключа также обозначается символом ключа.

Как определить отношения между таблицами

Когда вы создаете связь между таблицами, связанные поля не обязательно должны иметь одинаковые имена. Однако связанные поля должны иметь один и тот же тип данных, если только поле первичного ключа не является полем AutoNumber.Вы можете сопоставить поле AutoNumber с полем Number, только если свойствоFieldSize обоих совпадающих полей одинаково. Например, вы можете сопоставить поле AutoNumber и поле Number, если свойство FieldSize обоих полей - Long Integer. Даже если оба совпадающих поля являются числовыми полями, они должны иметь одинаковое свойствоFieldSizeproperty.

Как определить отношение «один ко многим» или «один к одному»

Чтобы создать отношение «один ко многим» или «один к одному», выполните следующие действия:

  1. Закройте все таблицы.Вы не можете создавать или изменять отношения между открытыми таблицами.

  2. В Access 2002 или Access 2003 выполните следующие действия:

    1. Нажмите F11, чтобы переключиться в окно базы данных.
    2. В меню Инструменты щелкните Отношения .

    В Access 2007, Access 2010 или Access 2013 щелкните Отношения в группе Показать / скрыть на вкладке Инструменты базы данных .

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

  4. Дважды щелкните имена таблиц, которые вы хотите связать, а затем закройте диалоговое окно Показать таблицу . Чтобы создать связь между таблицей и самой собой, добавьте эту таблицу два раза.

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

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

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

    При необходимости установите параметры взаимосвязи. Если вам нужна информация об определенном элементе в диалоговом окне Изменить отношения , нажмите кнопку с вопросительным знаком, а затем щелкните элемент. (Эти параметры будут подробно описаны позже в этой статье.)

  7. Щелкните Создать , чтобы создать отношение.

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

    Когда вы закрываете диалоговое окно Изменить отношения , Access спрашивает, хотите ли вы сохранить макет.Независимо от того, сохраняете ли вы макет или не сохраняете макет, созданные вами связи сохраняются в базе данных.

    Примечание

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

Как определить отношение «многие ко многим»

Чтобы создать отношение «многие ко многим», выполните следующие действия:

  1. Создайте две таблицы, которые будут иметь отношение «многие ко многим».

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

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

    Примечание

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

    1. Откройте таблицу в режиме конструктора.

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

    3. В Access 2002 или Access 2003 щелкните Первичный ключ на панели инструментов.

      В Access 2007 щелкните Первичный ключ в группе Инструменты на вкладке Design .

      Примечание

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

  4. Определите отношение «один ко многим» между каждой первичной таблицей и таблицей соединений.

Ссылочная целостность

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

  • Соответствующее поле из первичной таблицы является первичным ключом или имеет уникальный индекс.
  • Связанные поля имеют один и тот же тип данных. Есть два исключения. Поле AutoNumber может быть связано с полем Number , для которого значение свойства FieldSize равно Long Integer, а поле AutoNumber , которое имеет значение свойства FieldSize для идентификатора репликации, может быть связано с номером поле, которое имеет значение свойства FieldSize для идентификатора репликации.
  • Обе таблицы принадлежат одной базе данных Access.Если таблицы являются связанными таблицами, они должны быть таблицами в формате Access, и вы должны открыть базу данных, в которой они хранятся, чтобы установить ссылочную целостность. Ссылочная целостность не может быть применена для связанных таблиц из баз данных в других форматах.

При использовании ссылочной целостности применяются следующие правила:

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

Каскадное обновление и удаление

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

Если вы установите флажок Cascade Update Related Fields при определении отношения, каждый раз, когда вы изменяете первичный ключ записи в первичной таблице, Microsoft Access автоматически обновляет первичный ключ до нового значения во всех связанные записи. Например, если вы меняете идентификатор клиента в таблице «Клиенты», поле CustomerID в таблице «Заказы» автоматически обновляется для каждого из заказов этого клиента, так что связь не разрывается.Доступ к каскадным обновлениям без отображения каких-либо сообщений.

Примечание

Если первичный ключ в первичной таблице является полем AutoNumber, установка флажка Cascade Update Related Fields не действует, поскольку вы не можете изменить значение в поле AutoNumber.

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

Типы соединений

Есть три типа соединения. Вы можете увидеть их на следующем снимке экрана:

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

Вариант 2 определяет левое внешнее соединение. Левое внешнее соединение - это соединение, в котором все записи с левой стороны операции LEFT JOIN в операторе SQL запроса добавляются к результатам запроса, даже если в объединенном поле из таблицы справа нет соответствующих значений. сторона.

Вариант 3 определяет правое внешнее соединение. Правое внешнее соединение - это соединение, в котором все записи с правой стороны операции RIGHT JOIN в операторе SQL запроса добавляются к результатам запроса, даже если в объединенном поле из таблицы слева нет совпадающих значений. сторона.

.

Как напрямую связать список SharePoint с существующей таблицей в доступе MS?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Смотрите также

Scroll To Top