Связанные таблицы в access — как в access связать таблицы

15.09.2019

Для образца наберите 18 петель + 2 кромочные Ряд 1: 3 изнаночные петли , 12 лицевых петель , 3 изнаночные петли

Связанные таблицы

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

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

Поле Тип размещения в отеле я разбил на два и создал не одну, а две таблицы. Собственно размещение (DBL, SNGL, DBL + CHLD, TRPL, . ) — таблица Arrangements, на каком питании (BB, HB, FB, ALL, No meal) — таблица Meals. Для обеих табличек по два поля: ключевое и значение. Для полей Страна и Отель таблицы имеют всего лишь больше полей.
как в access связать таблицы

Для дальнейшей работы и тестирования необходимо занести некоторые данные, например, страны, отели:
как в access связать таблицы

Основная таблица и источники записей полей

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

Ниже даются комментарии по созданию связей между таблицами в access, но, возможно, Вам их будет легче понять, если Вы сперва посмотрите видео с примером создания связанной таблицы (использование внешнего ключа): table-lookup (файл в формате .mp4; пример на русской версии Access).

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

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

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

Открываем таблицу Reservations (бронирование отелей) в режиме редактирования (кликаем правой мышкой по таблице, выбираем в меню Design View). Находим тип поля для reservationCountryText, меняем на числовое — Number. После этого смотрим в нижний левый угол программы «Аксес» и находим две закладки: General и Lookup, выбираем Lookup.
как в access связать таблицы

Далее выбираем выпадающий список (Combo box), после чего появляются дополнительные опции. В источнике строк выбираем нужную нам таблицу (Countries), потом в верхнем левом углу программы «Аксес» переключаемся в режим таблицы (программа попросит сохранить таблицу, говорим — ОК).
как в access связать таблицы как в access связать таблицы

Смотрим, что получилось в поле reservationCountry. Во-первых, подставляется некоторое значение по умолчанию (0), во-вторых, мы имеем выпадающий список, но в котором видим пока только числа. Эти числа — значения первого столбца из связанной таблицы (поскольку именно первый столбец и именно он один берется по умолчанию при создании связи).
как в access связать таблицы

Наша задача — вывести названия стран. Для этого установим параметры выпадающего списка стран (Combo box для reservationCountry). Возвращаемся в режим редактирования таблицы ; помещаем курсор в поле reservationCountry и открываем внизу закладку Lookup. После выбора нами источника строк (Countries) по умолчанию программа Аксесс «привязала» первый столбец из связанной таблицы (Bound Column), в том смысле, что значением поля reservationCountry будет выбранное нами значение. Всего столбцов из связанной таблицы по умолчанию выбирается 1 (Column count). Изменим это значение на 2, оставим пока поле Column Heads без изменений, а в поле Column Widths нам надо указать ширину отображения каждого столбца: достаточно набрать 1;1 и выйти из поля, программа сама подставит единицу измерения, т.е. станет 1cm;1cm. Теперь мы можем сохранить изменения и посмотреть результат в таблице (остальные параметры оставим пока без изменений).
как в access связать таблицы

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

Для того, чтобы вывести только название страны, в поле Column Widths изменим значение 1cm;1cm на 0cm;1cm, т.е. мы «спрячем» первый столбец из связанной таблицы (важно: в таблицу в конечном счете все равно подставляется числовое значение, просто оно теперь не отображается).

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

Соответственно вашим заданием будет: связать таблицы Hotels, Arrangements, Meals (для последней еще надо будет создать поле, поскольку логичнее будет разбить поле reservationArrangement на два: reservationArrangement и reservationMeal; для этого поставьте курсор в режиме редактирования таблицы в следующее после поля reservationArrangement и кликните на значок, как обведено жирным на рисунке ниже; вы получите пустую строчку в нужном месте и можете добавить поле и сразу связать с нужной таблицей (не забудьте про тип создаваемого поля)).
как в access связать таблицы

Источник: http://access.my-study.info/lesson02.php

Связываем таблицы в MS Access

Задача: в дополнение к первой таблице продавцов, создать таблицу продаж. Связат S Access для организации выдачи зависимых данных.
Создадим Таблицу 2 – продаж со следующими полями:

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

Ранее созданную таблицу Таблица1 будем связывать с Таблицей2 по полю «kod». Так как продаж для одного продавца может быть много, то поле «kod» должно допускать совпадения, т.е. повторяться. Это связь будет иметь характер один к многим от Таблицы1 к Таблице2. Для задания этой связи в базе данных надо выбрать из основного меню MS Access меню «Сервис» — «Схема данных». Через контекстное меню добавляем в эту среду обе таблицы и мышкой протягиваем связь от поля «kod» Таблицы1 к полю «kod» Таблицы2:

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

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

Источник: http://dfscreator.narod.ru/DFSPage12.htm

Связь таблиц Access

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

1. Выберите команду Сервис > Схема данных. Откроется окно, схематически изображающее связи базы данных. На рис. 16.11 видно, что линия связи соединяет поля Код_Контакты таблицы Контакты и Контакт таблицы Список.

Примечание Данная связь соединяет ключевое и обычное поля. Это связь типа «один ко многим», когда одной записи таблицы Контакты может соответствовать несколько записей таблицы Список, но не наоборот.

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

Рис. 16.11. Схема данных Access

Для тренировки давайте удалим связь, а затем создадим ее заново.

2. Щелчком выделите линию связи.

3. Нажмите клавишу Delete. В ответ на появившийся запрос щелкните на кнопке Да. Связь исчезнет.

4. Поместите указатель мыши на пункт Код_Контакты таблицы Контакты.

5. Нажмите кнопку мыши и перетащите указатель на поле Контакт таблицы Список.

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

7. Дважды щелкните на линии связи. Откроется окно диалога, показанное на рис. 16.12.

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

Рис. 16.12. Параметры связи

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

8. Установите флажок Обеспечение целостности данных. Этот режим не позволит Access оставлять в таблице Список записи, для которых нельзя подобрать запись таблицы Контакты с подходящим значением поля Код_Контакты.

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

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

10. Щелкните на кнопке ОК.

11. Закройте окно Схема данных.

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

13. Щелкните на знаке «плюс» записи для Петра Петрова. Откроется вложенная таблица, содержащая те записи таблицы Список, значение поля Код_Контакты которых равно величине одноименного поля записи для Петра Петрова (рис. 16.13).

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

Рис. 16.13. Выборка данных из связанной таблицы Access

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

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

Источник: http://www.tepka.ru/msoffice/1605.html

связать таблицы в Access

Доброго времени суток!
Я конечно не первый раз открыл Access но связать правильно не могу..
Есть таблицы:

(Поля: Код заказа, Дата записи, Код магазина заказчика, Название товара, Код товара, Объем заказаного товару, Объем поставленных товаров, Дата поставки.)

(Поля: Код магазина-заказчика, Название магазина, Название магазина, Район города, Телефон, Директор)

(Поля: Код товара, Название товара, Вес, Стоимость единицы товара, Минимальная партия, Срок хранения)

Я хочу сделать так чтобы в таблицы ЗАКАЗЧИК в столбце КОД ТОВАРА можно было выбрать код товара типа с выпадающего списка и после того з таблицы ТОВАРЫ вставлялась в столбец НАЗВАНИЕ ТОВАРА соответствующие название товара так же с таблицы НАЗВАНИЕ ТОВАРА в столбецОБЪЕМ ЗАКАЗАННОГО ТОВАРА ставилось по умолчанию минимальная партия которая указана в таблице ТОВАРЫ и еще я пробовал сделать чтобы когда ставишь номер магазина то магазин автоматически привязывался к строке.
Моя версия, не очень =(.

Можно ли так сделать? Помогите пожалуйста! Заранее благодарен всем откликнувшимся.

Связать таблицы в Access
создала 4 таблицы не как не могу их связать . почему , помогите их связать

Связать таблицы MS Access
Добрый день! Помогите разобраться с таблицами. Изложу кратко суть: Хочу сделать базу данных для.

Как правильно связать таблицы БД в access
День добрый! Создаю свою первую базу данных, раньше этим не занимался. Базу данных создаю для.

Помогите связать DBF-таблицы с Access
Есть два компьютера: на обоих ОС-Win2000, Office-20003, BDE. На одном из них в пустой БД Access.

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

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

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

Источник: http://www.cyberforum.ru/ms-access/thread725586.html

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник: http://firststeps.ru/msoffice/access/r.php?11

В этой статье мы раскрыли вопрос: "как в access связать таблицы".

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *