Elettracompany.com

Компьютерный справочник
7 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

Связывание таблиц на схеме данных

Для того чтобы было удобно просматривать, создавать, удалять и модифицировать связи между таблицами, в Microsoft Access используется схема данных (Relationships) (рис. 2.27).

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

Чтобы убрать какую-либо таблицу из схемы данных, необходимо щелкнуть правой кнопкой мыши на любом месте этой таблицы и из контекстного меню выбрать команду Скрыть таблицу (Hide table). Например, на рис. 2.27 таблица «Список рассылки оповещений» скрыта.

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

Чтобы вновь добавить в эту схему свернутую таблицу («Список рассылки оповещений») или таблицу, у которой связи еще не установлены, необходимо:

  1. Щелкнуть правой кнопкой мыши на свободном пространстве схемы данных и из контекстного меню выбрать команду Добавить таблицу (Show table).
  2. В диалоговом окне Добавление таблицы (Show table) раскрыть вкладку Таблицы (Tables), выбрать из списка таблицу «Список рассылки оповещений», и нажать кнопку Добавить (Add) (рис. 2.28).

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

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

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

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

Альтернативный вариант — выбрать команду Связи, Изменить связь (Relationships, Edit Relationships) из главного меню Access. Эта команда появляется в меню, когда открыто окно Схема данных (Relationships).

    В диалоговом окне Изменение связей (Edit Relationships) можно выбрать из списков названия связанных таблиц и полей для связывания. Если отношение между таблицами «один-ко-многим», то слева из списка Таблица/запрос (Table/ Query) выбирается главная таблица и поле в этой таблице, а справа из списка Связанная таблица/запрос — подчиненная и соответственно поле в ней. Если отношение «один-к-одному», то порядок таблиц значения не имеет. Если вы устанавливали связь графически, то все поля в списках уже выбраны, и нужно только определить правила ссылочной целостности.

По умолчанию устанавливается первый переключатель. Нажать кнопку ОК.

  • Когда создается новая связь, можно также воспользоваться кнопкой Новое (Create New) и в окне Создание (Create New) ввести имена связываемых таблиц и имена полей, используемых для связи. Нажать кнопку ОК.
  • После установки всех параметров связи необходимо нажать кнопку ОК в окне Параметры объединения (Edit Relationship) и закрыть окно Схема данных (Relationship), нажав на кнопку Закрыть в правом верхнем углу окна.
  • Как связать две таблицы в access: «Люди» и «Телефоны»?

    Объясните саму суть.

    В свое время слегка учил РБД, SQL в теории. Сейчас не пойму, ваяя реально в аксесе.

    Допустим две таблицы — на одной список людей, на второй номера их телефонов.
    — Людей множество, у каждого свой id.
    — Одному человеку может принадлежать несколько телефонов.

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

    Я не пойму структуру таблицы БД.
    — Таблица — это как абстрактный класс в ООП, ключ — как метод (конструктор?), а прочее — как аргументы методов либо поля?
    — И соответственно новая итоговая таблица — это комбинированный класс от множественного наследования предыдущих?

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

    Message «Write conflict» with «Save record», «Copy to clipboard», «Drop changes» buttons
    Здравствуйте. Получив это сообщение нажимаю на "Save record" и продолжаю работать. Скажите.

    Как перейти из «Заголовок формы» в «Область данных» по нажатию «Tab» или другой комбинации клавиш?
    Как перейти из "Заголовок формы" в "Область данных" по нажатию "Tab" или другой комбинации клавиш?

    В терминах ООП и типа данных структур-рекордов понять нам друг друга не удалось.
    Ок.
    По порядку.
    База хранит сведения в некотором порядке.
    Данные заносить можно с помощью запросов, форм и редактирования таблиц.
    Но так можно и в Экселе поместить все данные в одну большую таблицу и придать им упорядоченность. Эксель может просчитать нечто и т.д.
    Но БД даёт более удобный интерфейс (оболочку) редактирования и считывания сведений, поддержка SQL запросов. Информацию может обрабатывать (из сводных таблиц) и фильтровать перед выводом в форму или отчёт.
    Как происходят последние манипуляции?
    Первичный ключ это указатель на что? На строки.
    Вторичный ключ — на столбцы.
    В С++ структурой можно считать строку, а ещё столбцы — полями. Соответственно для обмена данными нужны ссылочные типы, но вот тип их разный — ссылаемся либо на структуру вообще, либо на ещё поле, которое есть уже стандартный тип данных — int, string, bool и т.д.
    Что это даёт при обработке (сведению и фильтрации данных) использование ключей? Само по себе храниние данных мало интересно. Потому как это происходит при обработке сведений.
    Например, в вывод формы как проявляются первичный и вторичный ключ, при изменении данных и т.п.

    Добавлено через 40 минут
    Ну и существует ли межтабличная иерархия с которой начинается инициализация?
    Например в ЯП это main() или begin.
    Допустим, 2 таблицы. 1-я содержит id пользователей и их ФИО. 2-я таблица — до 3 номеров телефона на пользователя.
    Думаю, польза от такой БД будет, если она сможет синтезировать сведения из той и другой в виде сводной таблице. А в действии это можно увидеть в форме или в отчете.
    Т.к. в БД не должно быть избыточных сведений, то в табл 2 нет нужды в ФИО — достаточно их id.
    Итак, где какие ключи первичные и вторичные и нужна ли 3-я сводная таблица либо можно все напрямую транслировать в форму/отчёт?

    Связывание таблиц и удаление связей в Microsoft Access

    Работа с базами данных — процесс, требующий определённых навыков и понимания некоторых нюансов. Разработанная компанией Microsoft программа Access даёт пользователям возможность быстро создавать и редактировать БД. Один из важнейших моментов, с которым обязательно нужно разобраться, при создании БД — связывание её элементов. В этой статье разберёмся с тем, как создать или удалить связи между таблицами в Access. Давайте же начнём. Поехали!

    Прежде чем мы перейдём к связыванию, необходимо создать так называемые ключевые поля. Что это такое? Ключевое поле — это поле, определяющее каждую запись. Теперь перейдём непосредственно к его созданию. Открыв нужную таблицу, щёлкните правой кнопкой мыши по вкладке и выберите пункт «Конструктор». Затем добавьте новое поле. Например, если у вас есть список сотрудников, то ключевым стоит сделать «код сотрудника», указав тип данных «счётчик» либо «числовой». Чтобы сделать его ключевым, нажмите кнопку «Ключевое поле», расположенную на панели инструментов Microsoft Access. Далее, необходимо проделать то же самое для всех остальных таблиц.

    Теперь уже можно связывать наши таблицы. Чтобы сделать это, откройте вкладку «Работа с базами данных» и в разделе «Отношения» ленты инструментов выберите пункт «Схема данных». Перед вами откроется окно, в котором понадобится выбрать все таблицы. Поочерёдно кликните по каждой из них. Закончив, выйдите из этого окна. Теперь нужно определиться с тем, как именно связывать. Например, есть две таблицы: «Бренд» и «Одежда», между которыми необходимо связать между собой. Поле «Код бренда» должно быть и там, и там. Если оно отсутствует — создайте его. При этом для записей категории «Бренд» оно будет ключевым (так называемый первичный ключ), а для «Одежда» — обычным (внешний ключ). Первичный ключ «Код бренда» перетащите на внешний ключ «Код бренда». После этого появится диалоговое окно, в котором нужно отметить галочками пункты: «Обеспечение целостности…», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей». Отметив все пункты, нажмите кнопку «Создать». Появится чёрная линия, соединяющая указанные строки. Созданная связь имеет название «один ко многим». То есть в приведённом примере это будет означать, что один бренд может выпускать много разной одежды.

    Далее, аналогичным образом свяжите все остальные, не забывая добавлять поля. Имея минимум три таблицы (среди которых две основных и одна промежуточная), вы можете создать тип связи «многие ко многим». Для заполнения полей, являющихся внешними ключами, можно использовать «Мастер подстановок». Чтобы сделать это, перейдите в режим конструктора и в разделе «Тип данных» выберите пункт «Мастер подстановок». В открывшемся окне выберите откуда будет взята информация для заполнения. Затем укажите нужные поля и нажмите кнопку «Далее». Следующие два окна можно пропустить. В конце кликните по кнопку «Готово». Прежде чем начать заполнение, программа предложит вам сохраниться, щёлкните «Да». Обратите внимание, что заполнение таким способом возможно только в случае, если связь ещё не установлена. Если у вас так не получилось, то вы можете удалить её и заполнить ячейки. После этого она автоматически появится, однако, вам понадобится кликнуть по ней два раза и отметить галочками пункты: «Обеспечение целостности…», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей».

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

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

    Создание базы данных в MS Access 2007: пошаговая инструкция

    В современном мире нужны инструменты, которые бы позволяли хранить, систематизировать и обрабатывать большие объемы информации, с которыми сложно работать в 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. Запустите MS Access 2007.
    2. Нажмите на кнопку «Новая база данных».
    3. В появившемся окне введите название БД и выберите «Создать».

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

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

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

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

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

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

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

    1. Перейти во вкладку «Работа с базами данных».
    2. Нажать на кнопку «Схема данных».
    3. Если схема не была создана автоматически, нужно нажать ПКМ на пустой области и выбрать «Добавить таблицы».
    4. Выберите каждую из сущностей, поочередно нажимая кнопку «Добавить».
    5. Нажмите кнопку «ОК».

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

    1. Перетащите общее поле из одной таблицы в другую.
    2. В появившемся окне выберите необходимы параметры и нажмите «ОК».
    3. Теперь в окне должны отобразиться миниатюры двух таблиц со связью (один к одному).

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

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

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

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

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

    На выборку

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

    1. Перейти во вкладку «Создание».
    2. Нажать кнопку «Конструктор запросов» в блоке «Другие».
    3. В новом окне нажмите на кнопку SQL.
    4. В текстовое поле введите команду: SELECT * FROM Студенты WHERE Адрес = «Харьков»; где «SELECT *» означает, что выбираются все студенты, «FROM Студенты» — из какой таблицы, «WHERE Адрес = «Харьков»» — условие, которое обязательно должно выполняться.
    5. Нажмите кнопку «Выполнить».
    6. На выходе мы получаем результирующую таблицу.

    А что делать, если нас интересуют студенты из Харькова, стипендии у которых больше 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» — типы данных для соответствующих значений.

    1. Кликните по кнопке «Выполнить».
    2. Откройте созданную таблицу.
    На добавление, удаление, редактирование

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

    • для заполнения кортежа:
      INSERT INTO Преподаватели
      VALUES (1, ‘Иванова’, ‘Иванна’, ‘Ивановна’, ‘Ж’, ’05-06-1981′, ‘География’);
    • для редактирования записи:
      UPDATE Преподаватели SET Имя = ‘Анна’;
    • для удаления:
      DELETE * FROM Преподаватели WHERE Имя=’Анна’;.

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

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

    1. Откройте интересующую таблицу.
    2. Перейдите во вкладку «Создание».
    3. Нажмите на необходимый формат формы из блока «Формы».

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

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

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

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

    1. Перейдите во вкладку «Создание».
    2. Нажмите на кнопку «Мастер отчетов» в блоке «Отчеты».
    3. Выберите интересующую таблицу и поля, нужные для печати.
    4. Добавьте необходимый уровень группировки.
    5. Выберите тип сортировки каждого из полей.
    6. Настройте вид макета для отчета.
    7. Выберите подходящий стиль оформления.

    Если отображение вас не устраивает, его можно немного подкорректировать. Для этого:

    1. Нажмите ПКМ на вкладке отчета и выберите «Конструктор».
    2. Вручную расширьте интересующие столбцы.
    3. Сохраните изменения.

    Вывод

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

    Для проектирования более сложных БД необходимо разбираться в объектно-ориентированном программировании и изучать такие СУБД, как MS SQL и MySQL. А для тех, кому нужна практика составления запросов, рекомендую посетить сайт SQL-EX, где вы найдете множество практических занимательных задачек.

    Удачи в освоении нового материала и если есть какие-либо вопросы – милости прошу в комментарии!

    Подробно о том, как связывать таблицы в access

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

    Microsoft Access — одна из систем управления БД. В нее включен язык программирования VBA, который дает возможность пользователю самому писать разные приложения для работы с БД.

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

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

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

    Все изменения, которые происходят, отображаются во всех БД.

    Чтобы ответить на вопрос о том, как связывать таблицы в Access, необходимо показать все на примере: в базе данных созданы четыре таблицы: Студенты, Дисциплины, Успеваемость и Группы студентов. Установим между ними логические связи. Как это сделать?

    1. Выбрать главный ключ: КодГруппы, КодСтудентов и КодДисциплины.
    2. Между ключевым полем КодГр. в табл. «Группа» и вторичным ключом КодГр. В табл. «Студенты» установить связь «один – ко – многим».
    3. Закрыть все открытые таблицы в Access форме, связанные таблицы в том числе.
    4. В специальном диалоговом окне «Добавить» выбрать имя поля.
    5. Закрыть все диалоговые окна.

    Инструкция о том, как установить логические связи во всех таблицах окна «Схема данных»:

    1. Из таблицы «Группы» надо переместить поле КодГруппы на такое же поле из таблицы «Студенты».
    2. Появится окно «Изменение связей».

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

    По такому же плану можно установить связь между полем КодСтудента и Успеваемость и таблицах «Студенты». Потом в таблицах «Успеваемость» и «Дисциплины» для поля КодДисциплины.

    1. Когда все логические связи установлены, следует закрыть окно «Схема данных».
    2. Заполнить все таблицы. Сначала вводим данные в таблицу «Группы» студентов, так как в таблице «Студенты» поле КодГруппы применяется как столбец для заполнения поля таблицы «Студенты».
    3. Указать связи между tables «Студенты» и «Успеваемость», «Дисциплины» и «Успеваемость».

    Преимущества использования логических связей

    Почему держать данные раздельно в связанных tables лучше? Рассмотрим достоинства такого хранения.

    Согласованность

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

    Эффективность

    • Экономия пространства на диске в результате того, что сведения хранятся в одном месте.
    • Из маленьких таблиц информация извлекается лучше.

    Простота

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

    Важный совет!

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

    В заключение

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

    Читать еще:  Smartart для powerpoint шаблоны
    Ссылка на основную публикацию
    Adblock
    detector