Как установить несколько ключевых полей
Как установить несколько ключевых полей
Создание и изменение ключевых полей
Для создания ключевых полей таблицы:
1. В режиме конструктора выделить одно или несколько полей, которые необходимо определить как ключевые. Для выделения одного поля нужно щелкнуть область выделения строки нужного поля (кнопка слева строки). Выделить несколько полей можно, удерживая при выборе каждого поля клавишу «Сtrl».
2. Нажать кнопку Ключевое поле на панели инструментов.
Создать индексы, как и ключи, можно по одному или нескольким полям. Составные индексы позволяют при отборе данных группировать записи, в которых первые поля могут иметь одинаковые значения. Индексировать поля требуется для выполнения частых поисков, сортировок или объединений с полями из других таблиц в запросах. Ключевые поля таблицы индексируются автоматически. Нельзя индексировать поля с типом данных поле МЕМО, гиперссылка или объект OLE. Для остальных полей индексирование используется, если поле имеет текстовый, числовой, денежный тип или тип даты/времени и требуется осуществлять поиск и сортировку значений в поле. Если предполагается, что будет часто выполняться сортировка или поиск одновременно по двум и более полям, можно создать составной индекс. Например, если для одного и того же запроса часто устанавливается критерий для полей Имя и Фамилия, то для этих двух полей имеет смысл создать составной индекс. При сортировке таблицы по составному индексу сначала осуществляется сортировка по первому полю, определенному для данного индекса. Если в первом поле содержатся записи с повторяющимися значениями, то сортировка осуществляется по второму полю и т. д.
Чтобы создать индекс для одного поля надо:
1. В режиме конструктора в панели структуры таблицы (верхняя часть окна) выбрать поле, для которого требуется создать индекс.
2. В панели свойств (нижняя часть окна) для свойства Индексированное поле установить значение «Да (Допускаются совпадения)» или «Да (Совпадения не допускаются)».
Убедиться, что в данном поле совпадающих записей нет, можно, выбрав значение «Да (Совпадения не допускаются)».
Чтобы создать составной индекс:
1. В режиме конструктора на панели инструментов нажать кнопку Индексы.
2. В первой пустой строке поля Индекс ввести имя индекса. Для индекса можно использовать либо имя одного из индексируемых полей, либо другое подходящее имя.
3. В поле Имя поля нажать стрелку и выбрать в списке первое поле, для которого требуется создать индекс.
4. В следующей строке поля Имя поля указать второе индексируемое поле (для данной строки поле Индекс следует оставить пустым). Повторить эти действия для всех полей, которые необходимо включить в индекс. В составном индексе может быть до 10 полей.
Важно: По умолчанию, установлен порядок сортировки «По возрастанию». Для сортировки данных полей по убыванию в поле Порядок сортировки в окне индексов нужно указать значение «По убыванию». Хочу заметить, что поля индекса могут не быть ключевыми.
Ограничение Unigue предотвращает ввод в поле повторяющихся значений. Этот тип ограничения может быть установлен как для одного поля, так и для нескольких полей составного ключа. Назначение ключевого поля (для одного поля) автоматически запрещает ввод в него повторяющихся значений, тем самым обеспечивая для каждой записи уникальный идентификатор. Однако запрет на ввод повторяющихся значений может потребоваться и для других, не ключевых, полей.
Чтобы установить ограничение Unigue для одного поля таблицы:
1. В режиме конструктора в панели структуры таблицы выбрать поле, в котором допускается ввод только уникальных значений.
2. В панели свойств для свойства Индексированное поле установить значение «Да (Совпадения не допускаются)».
Чтобы установить ограничение Unigue для нескольких полей таблицы:
1. В режиме конструктора открыть окно индексов и создать составной индекс, включив в него поля, в которые должен быть, запрещен ввод повторяющихся значений.
2. Выбрав имя индекса, в панели свойств индекса в ячейке свойства Уникальный индекс установить значение «Да».
Общая картина ограничений и поддержания целостности данных
Ограничение – некоторое ограничивающее условие. В базе данных – общее понятие, охватывающее широкий круг аспектов управления базой данных: ключи, значения, типы и форматы данных и т. д. Ограничения устанавливают для пользователя некоторые рамки при вводе, изменении или удалении данных приложения. Вся система ограничений при создании приложения базы данных строится с целью обеспечения целостности данных.
Целостность данных представляет собой набор правил, используемых процессором базы данных для поддержания связей между записями в связанных таблицах, а также для защиты от случайного удаления или изменения связанных данных. Например, ограничение можно использовать, чтобы гарантировать, что каждый служащий в базе данных будет относиться к какому-либо отделу или что пользователи не смогут случайно ввести отрицательное значение для цены товара.
Ограничения можно определять на двух уровнях:
1. В базе данных. Ограничения в базе данных ассоциируются с определениями объектов-таблиц. Например, для таблицы может быть установлено ограничение, которое требует, чтобы каждое значение в столбце было уникальным.
2. В приложении Access (в программном коде или свойствах объектов). Ограничения в приложении ассоциируются с объектами приложения, которые формируют интерфейс к информации базы данных. Например, текстовое поле может иметь ограничение, которое требует, чтобы все вводимые в него значения были больше 20.
ИНФОФИЗ
Как сказал.
Вопросы к экзамену
Для всех групп технического профиля
Список лекций по физике за 1,2 семестр
Учу детей тому, как надо учиться
Часто сталкиваюсь с тем, что дети не верят в то, что могут учиться и научиться, считают, что учиться очень трудно.
Урок 33. Практическая работа № 21. Организация баз данных. Заполнение полей баз данных.
Практическая работа № 21
Тема: Организация баз данных. Заполнение полей баз данных.
Цель работы: изучение приемов установки связей между таблицами базы данных.
Оборудование: ПК, Windows XP Professional, MS Access 2007.
1 В соответствие с заданием создать и заполнить таблицы БД «Фирма», установить связи между ними.
2 Продемонстрировать на компьютере заполненные таблицы, схему данных.
3 Ответить на контрольные вопросы.
4 Сделать вывод о проделанной работе.
Порядок выполнения:
1. Запустите Microsoft Access.
Для этого запустите Access, создайте новую базу данных, задайте имя базы данных Фирма, выберите место сохранения Вашей базы данных (диск Х:) и нажмите кнопку Создать. (подробный порядок действий описан в лабораторной работе № 23)
Таблица Сотрудники
Таблица Клиенты
Таблица Заказы
4. Установите ключевые поля.
Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля.
Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является Счетчик, так как значения в данном поле являются уникальными (т. е. исключают повторы).
При создании таблиц в режиме конструктора ключевое поле устанавливается автоматически. Откройте созданные Вами таблицы в режиме Конструктор и проверьте установленные ключевые поля:
1) в таблице Сотрудники ключевое поле Код сотрудника
2) в таблице Клиенты ключевое поле Код клиента
3) в таблице Заказы ключевое поле Код заказа
5. Создайте раскрывающиеся списки с помощью Мастера подстановок.
Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Откройте таблицу Заказы в режиме Конструктора. Для поля Код клиента выберите тип данных Мастер подстановок.
В появившемся окне выберите команду Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее.
В списке таблиц выберите таблицу Клиенты и щелкните на кнопке Далее.
В списке Доступные поля выберите поле Код клиента и щелкните на кнопке со стрелкой >>, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поле Название компании и щелкните на кнопке Далее.
Выберите порядок сортировки списка по полю Название компании и нажмите кнопку Далее.
В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка, установите флажок Скрыть ключевой столбец и нажмите кнопку Далее.
На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово.
Сохраните полученный результат.
6. Аналогичным образом создайте раскрывающийся список для поля Код сотрудника.
Теперь в списке таблиц выберите таблицу Сотрудники
В списке Доступные поля выберите поля Код сотрудника, Фамилия, Имя.
Порядок сортировки списка выберите по полю Фамилия.
Все остальные действия проводятся аналогично пункту 6.
7. Создайте связей между таблицами.
Существует несколько типов отношений между таблицами:
— при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности;
— при отношении «один-к-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице;
— при отношении «многие-к-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой.
Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя.
Выполните команду вкладки Лента Работа с базами данных кнопка Схема данных
Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выбираются нужные таблицы. Для добавления в схему данных новой таблицы необходимо щелкнуть правой кнопкой мыши на схеме данных и в контекстном меню выбрать пункт Добавить таблицу.
Если связи между таблицами уже были заданы, то откроется окно Схема данных, на котором будут отображены таблицы и связи между ними.
Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице.Параметры связи можно изменить, нажав на кнопку Объединение. После установления всех необходимых параметров нажмите кнопку ОК.
Аналогично измените связь между таблицами Клиенты и Заказы.
В результате должна получиться схема данных, представленная на рисунке.
На схеме данных связи отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-к-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и «∞» вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса).
7. В таблицу Сотрудники внесите данные о 7 работниках.
8. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма.
9. В таблице Заказы оформите 5 заявок, поступивших на фирму.
10. Покажите работу преподавателю.
11. Ответьте на контрольные вопросы.
Контрольные вопросы:
1 С помощью чего можно создавать таблицы?
2 Что такое ключевое поле?
3 Как установить несколько ключевых полей?
4 Как установить связи между таблицами?
5 Какие существуют отношения между таблицами?
6 Что означают на схеме данных «1» и «∞»?
7 Зачем нужен Мастер подстановок?
8 Для чего нужен механизм запросов?
Методические указания к лабораторной работе № 24 Создание связей в базе данных
Как сделать несколько ключевых полей в access?
Выше неоднократно упоминалось понятие ключевого поля. Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Microsoft Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов.
В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ. Рассмотрим каждый из этих типов.
Для создания ключевого поля типа Счетчик необходимо в режиме Конструктора таблиц:
Если до сохранения созданной таблицы ключевые поля не были определены, то при сохранении будет выдано сообщение о создании ключевого поля. При нажатии кнопки Да (Yes) будет создано ключевое поле счетчика с именем Код (ID) и типом данных Счетчик (AutoNumber).
Для создания простого ключа достаточно иметь поле, которое содержит уникальные значения (например, коды или номера). Если выбранное поле содержит повторяющиеся или пустые значения, его нельзя определить как ключевое. Для определения записей, содержащих повторяющиеся данные, можно выполнить запрос на поиск повторяющихся записей. Если устранить повторы путем изменения значений невозможно, следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.
Составной ключ необходим в случае, если невозможно гарантировать уникальность записи с помощью одного поля. Он представляет собой комбинацию нескольких полей. Для определения составного ключа необходимо:
Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в окне Конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала нужно определить ключ, а затем нажать кнопку Индексы (Indexes) на панели инструментов Конструктор таблиц (Table Design). Затем в появившемся окне Индексы (Indexes) нужно указать другой порядок полей для индекса с именем Ключевое поле (Primary Key).
Рассмотрим в качестве примера применения составного ключа таблицу «Заказано» (OrderDetails) базы данных (Northwind) (рис. 2.23).
В данном случае в качестве составного ключа используются поля «Код заказа» (OrderlD) и «КодТовара» (ProductID), т. к. ни одно из этих полей в отдельности не гарантирует уникальность записи. При этом в таблице выводится не код товара, а наименование товара, т. к. поле «КодТовара» (ProductID) данной таблицы содержит подстановку из таблицы «Товары» (Products), а значения полей «КодТовара» (ProductID) этих таблиц связаны отношением «один-ко-многим» (одной записи таблицы «Товары» (Products) может соответствовать несколько записей таблицы «Заказано» (OrderDetails)). Оба поля могут содержать повторяющиеся значения. Так, один заказ может включать в себя несколько товаров, а в разные заказы могут включаться одинаковые товары. В то же время сочетание полей «КодЗаказа» (OrderlD) и «КодТовара» (ProductID) однозначно определяет каждую запись таблицы «Заказы» (OrderDetails).
Чтобы изменить ключ, необходимо:
Рис. 2.23. Пример таблицы с использованием составного ключа
Чтобы удалить ключ, необходимо:
В разделе Программное обеспечение на вопрос как выбрать два ключевых поля в access? заданный автором Простричь лучший ответ это В таблице, в режиме Конструктора, выбираешь оба поля, потом правой кнопкой мыши и назначаешь их ключевыми.
22 ответа
Привет! Вот подборка тем с ответами на Ваш вопрос: как выбрать два ключевых поля в access?
Как сделать несколько ключевых полей в Access?ОЧЕНЬ надо.
Вино Как сделать Как сделать спавн для карты в майнкрафт? Как сделать подчеркивание в Word-е на пустом месте, а не под словами?
Как установить несколько ключевых полей
Искусство создания базы данных в Microsoft Office Access 2007
Предметом изучения данного пособия является процесс создания базы данных в Microsoft Office Access 2007, интерфейс которой отличается от предыдущих версий Access. Настоящее учебное пособие написано для студентов Института математики Сибирского федерального университета, обучающихся по направлениям и специальностям: «Математика», «Математика. Компьютерные науки», «Прикладная математика и информатика». Включенные в пособие материалы составляют практический раздел дисциплины «Основы баз данных», читаемой автором на протяжении многих лет студентам-математикам.
Цель пособия: ознакомить студентов с идеями и методами создания баз данных с помощью современных систем управления базами данных (СУБД). В качестве примера взята самая популярная и доступная на сегодняшний день реляционная СУБД ‒ Microsoft Office Access 2007 (далее просто Access). Автор не ставил перед собой задачу дать исчерпывающую информацию о СУБД Access. На этот счет имеется обширная справочная и учебная литература [1 ‒ 3, 6, 7, 9, 11, 15, 19, 21]. Настоящее пособие – учебное издание, адресованное в первую очередь студентам. Поэтому оно содержит не только теоретический материал, но и описание заданий, которые должны выполнить студенты на практических занятиях. Предполагается, что студенты знакомы с основами проектирования баз данных, изложенными в работах [4, 5, 8, 10, 12 – 14, 16 – 18, 20].
Почему называется так пособие? Причем здесь искусство? Дело в то, что в Access одно и то же действие можно реализовать различными инструментами. Функциональная избыточность – это главная особенность современных программных средств, в том числе и Access. Разумное использование этой избыточности в определенных ситуациях – искусство построения базы данных в конкретной инструментальной среде. Практические рекомендации по рациональному применению инструментов Access и предостережения от возможных ошибочных решений постоянно даются в тексте данного пособия.
Пособие включает в себя шесть тем, охватывающих полный цикл реализации проекта базы данных с помощью Access: от создания основных объектов и построения пользовательского интерфейса до администрирования базы данных. Изучение первых трех тем, касающихся таблиц, запросов и отчетов, позволяет сформировать общее представление о проблематике баз данных и особенностях построения баз данных в Access. Последние три темы, посвященные формам, макросам и настройке базы данных, направлены на отработку навыков построения пользовательского интерфейса, автоматизацию работы с отчетами и формами, обеспечение целостности и защиту данных. Каждая из шести тем содержит изложение необходимого теоретического материала. Теоретический материал дается «без воды», не перегружен иллюстрациями, снабжен подробными пошаговыми инструкциями по реализации тех или иных проектных решений. Всякая тема завершается практическими заданиями и контрольными вопросами, которые ориентированы на отработку практических навыков и закрепление пройденного материала. В пособии для любого задания предусмотрено десять вариантов – десять различных предметных областей. Все шесть заданий одного того же варианта взаимосвязаны. Их выполнение позволяет для заданной предметной области реализовать все этапы создания базы данных с помощью Access.
• полужирным шрифтом выделены элементы интерфейса и инструменты Access (вкладки, команды, пункты меню, названия клавиш и кнопок, заголовки диалоговых окон и инструментальных средств);
• курсивом обозначены новые термины, а также имена полей и базовых таблиц;
• знак плюс между названиями клавиш означает, что их следует нажимать одновременно, например, Ctrl + P;
• значок ☞ указывает на адресованные читателю важные замечания, рекомендации, предупреждения, ограничения, которые надо учесть.
База данных ‒ это динамически обновляемая информационная модель некоторой предметной области. Работа с базой данных делится на три этапа: проектирование, создание, эксплуатация. Современные базы данных создаются и эксплуатируются при помощи СУБД. СУБД Access позволяет создавать реляционные базы данных, в которых данные хранятся в виде множества связанных между собой таблиц. Всякая база данных формируется на основе проекта, который определяет ее структуру и информационные потребности пользователей. Цель данной темы: дать ответы на основополагающие вопросы, из чего состоит база данных в Access и как ее создать.
Основные объекты базы данных
База данных Access – это файл с расширением ACCDB (ACCDB-файл), в котором хранятся такие объекты как таблицы, запросы, отчеты, формы, макросы, модули.
Таблицы (базовые таблицы) – объекты базы данных, предназначенные для хранения информации о предметной области. Как правило, база данных состоит из нескольких связанных между собой таблиц. Каждую строку таблицы называют в Access записью, а столбец – полем.
Запросы предназначены для извлечения информации, хранящейся в одной или нескольких таблиц. С помощью запросов можно, задав ряд условий, отфильтровать и отобразить только нужные записи. В базе данных хранятся не результаты выполнения запросов, а лишь предписания описывающие, какую информацию надо извлечь из таблиц базы данных.
Отчеты служат для представления и печати информации, хранящейся в таблицах и формируемой запросами базы данных. С помощью отчетов можно просматривать и печатать нужные сведения в виде документов установленного образца. Отчеты можно запускать в любое время, и они всегда будут отражать текущее состояние базы данных.
Формы называют окнами базы данных, которые используются для просмотра, ввода и редактирования данных, организации пользовательского интерфейса. Они могут содержать кнопки для выполнения различных команд.
Модули и макросы расширяют функциональные возможности Access и позволяют автоматизировать некоторые специфические процессы обработки информации, диктуемые предметной областью.
Макросы – это программы, составленные из макрокоманд. Набор макрокоманд Access представляет собой упрощенный язык программирования и содержит несколько десятков команд. Каждая макрокоманда задает определенное действие над каким-либо объектом базы данных. Макросы чаще всего запускаются при наступлении определенных событий. Например, когда открываемый отчет пустой.
Модули (модули VBA), как и макросы, являются программами. Они пишутся на языке программирования Visual Basic для приложений (VBA). Это язык программирования более низкого уровня, чем язык макрокоманд.
Запуск системы и существующей базы данных
Чтобы запустить Access, нужно выполнить следующие действия.
1. Щелкнуть по кнопке Пуск на панели задач Windows.
2. Указать Все программы.
3. Выбрать Microsoft Office, а затем Microsoft Access.
Откроется страница Приступая к работе с Microsoft Office Access. В ней показано, с чего можно начать работу в Access. Например, можно открыть одну из недавно использованных баз данных, создать новую базу данных с помощью шаблона или создать новую пустую базу данных.
Если запуск Access осуществлен, открыть существующую базу данных можно с помощью кнопки Microsoft Office, расположенной в верхнем левом углу страницы Приступая к работе с Microsoft Office Access. Это можно сделать так.
1. Щелкнуть кнопку Microsoft Office. Откроется окно, в котором выбрать пункт Открыть.
2. В диалоговом окне Открытии документа найти ACCDB-файл базы данных и нажать кнопку Открыть.
Как сделать два ключевых поля в access?
В разделе Программное обеспечение на вопрос как выбрать два ключевых поля в access? заданный автором Простричь лучший ответ это В таблице, в режиме Конструктора, выбираешь оба поля, потом правой кнопкой мыши и назначаешь их ключевыми.
22 ответа
Привет! Вот подборка тем с ответами на Ваш вопрос: как выбрать два ключевых поля в access?
Как сделать несколько ключевых полей в Access?ОЧЕНЬ надо.
Вино Как сделать Как сделать спавн для карты в майнкрафт? Как сделать подчеркивание в Word-е на пустом месте, а не под словами?
Выше неоднократно упоминалось понятие ключевого поля. Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Microsoft Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов.
В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ. Рассмотрим каждый из этих типов.
Для создания ключевого поля типа Счетчик необходимо в режиме Конструктора таблиц:
Если до сохранения созданной таблицы ключевые поля не были определены, то при сохранении будет выдано сообщение о создании ключевого поля. При нажатии кнопки Да (Yes) будет создано ключевое поле счетчика с именем Код (ID) и типом данных Счетчик (AutoNumber).
Для создания простого ключа достаточно иметь поле, которое содержит уникальные значения (например, коды или номера). Если выбранное поле содержит повторяющиеся или пустые значения, его нельзя определить как ключевое. Для определения записей, содержащих повторяющиеся данные, можно выполнить запрос на поиск повторяющихся записей. Если устранить повторы путем изменения значений невозможно, следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.
Составной ключ необходим в случае, если невозможно гарантировать уникальность записи с помощью одного поля. Он представляет собой комбинацию нескольких полей. Для определения составного ключа необходимо:
Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в окне Конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала нужно определить ключ, а затем нажать кнопку Индексы (Indexes) на панели инструментов Конструктор таблиц (Table Design). Затем в появившемся окне Индексы (Indexes) нужно указать другой порядок полей для индекса с именем Ключевое поле (Primary Key).
Рассмотрим в качестве примера применения составного ключа таблицу «Заказано» (OrderDetails) базы данных (Northwind) (рис. 2.23).
В данном случае в качестве составного ключа используются поля «Код заказа» (OrderlD) и «КодТовара» (ProductID), т. к. ни одно из этих полей в отдельности не гарантирует уникальность записи. При этом в таблице выводится не код товара, а наименование товара, т. к. поле «КодТовара» (ProductID) данной таблицы содержит подстановку из таблицы «Товары» (Products), а значения полей «КодТовара» (ProductID) этих таблиц связаны отношением «один-ко-многим» (одной записи таблицы «Товары» (Products) может соответствовать несколько записей таблицы «Заказано» (OrderDetails)). Оба поля могут содержать повторяющиеся значения. Так, один заказ может включать в себя несколько товаров, а в разные заказы могут включаться одинаковые товары. В то же время сочетание полей «КодЗаказа» (OrderlD) и «КодТовара» (ProductID) однозначно определяет каждую запись таблицы «Заказы» (OrderDetails).
Чтобы изменить ключ, необходимо:
Рис. 2.23. Пример таблицы с использованием составного ключа
Чтобы удалить ключ, необходимо:
Что такое ключевые поля и индексы в БД Microsoft AccessУроки по Microsoft Access
Если вы не знаете, что такое первичный ключ, как создаются ключевые поля и для чего нужно использовать индек…
Как определить ключевое поле в таблице.Виктория Дончик
informatikurok.ru/Тема: Ключевое поле в таблице Access. Сегодня на занятии мы рассмотрим, что такое ключевое поле…
3.1 Ключевые поляOleg PC
Microsoft Office Access или просто Microsoft Access — реляционная система управления базами данных (СУБД) корпорации Microsoft….
Как ЛЕГКО и БЫСТРО создать схему данных в Microsoft Access?Уроки по Microsoft Access
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/lessons/ Готовые базы Access: 7108.ru/g0203…
ЛЕГКОЕ создание таблиц в базе данных Microsoft AccessУроки по Microsoft Access
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете с чего начать…
Microsoft Access № 56: изменение поля счётчика AccessАндрей Домостой
Как задать начальное значение поля счётчика Access и шаг приращения? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ:…
Как сделать таблицы в базе данных Microsoft Access 2016Уроки по Microsoft Access
Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…
Как создать ВЫЧИСЛЯЕМЫЕ запросы в базе AccessУроки по Microsoft Access
Если вы не знаете, как создаются запросы с вычислениями в базе данных Microsoft Access, то посмотрите это видео….
Створення запитів в Access 2016Вчитель Інформатики
Створення простого запиту, запиту на вибірку та запиту з параметром в Access 2016.
23 Удаление полей в AccessСИЛА ЗНАНИЯ
Как задать условия для ТЕКСТОВЫХ полей в запросах MS ACCESSУроки по Microsoft Access
Если вы не знаете, как создаются запросы в базе данных Microsoft Access, то посмотрите это видео. Продолжаем работат…
20 Перемещение полей в AccessСИЛА ЗНАНИЯ
ПОШАГОВОЕ создание схемы данных в базе данных AccessУроки по Microsoft Access
Если вы не знаете, как ПРАВИЛЬНО построить схему данных в программе Microsoft Access, то посмотрите это видео. Продо…
Первое знакомство с базами данных Microsoft AccessУроки по Microsoft Access
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…
Access с нуля Урок №7- Схема данныхKak V
Основные свойства полей таблицы Microsoft AccessГеннадий
Основные свойства полей таблицы Microsoft Access.
Какие типы связей между таблицами существуют в БД AccessУроки по Microsoft Access
Если вы не знаете, какие типы связей между таблицами используются в программе Microsoft Access, то посмотрите это…
Готовая база данных Access Успеваемость студентов (1 из 4)Уроки по Microsoft Access
Если вы не знаете что такое готовая база данных Access, то посмотрите это видео. ВСЕГО ЗА 4 УРОКА мы создадим…
4.1 Создание связей между таблицами Microsoft Access 2010.Dmitrii Dmitrii
Раздел 4. Организация связей между таблицами и сохранение целостности данных. Основы системы управления…
Как связать таблицы в базе данных Microsoft Access 2016Уроки по Microsoft Access
Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…
Курс Qlik Sense #6: Ключевые поля. Как связать разные таблицыЕвгений Стучалкин
Ссылка на таблицу контактов (Кликнуть правой кнопкой, нажать скопировать ссылку): business-4-profit.com/qlik-uroki/Contact…
ЛЕГКОЕ создание маски ввода в базе данных Microsoft AccessУроки по Microsoft Access
Узнайте, как легко и быстро создать маску ввода в базе данных Microsoft Access — accesshelp.ru/maska-vvoda-v-microsoft-access/ Если…
Microsoft Access № 13: автоматическое заполнение поля макросом данных AccessАндрей Домостой
Как при помощи макроса данных Access автоматически задать значение логического поля (женский или мужской…
Access. Таблицы. 2. Первичный ключ. Подстановки.Vigil IT-video
В видеоуроке рассказывается о первичных ключах и подстановке значений в полях таблиц, а так же о том, как…
Максимальная длина строки в запросе Access (функция Len)Уроки по Microsoft Access
Если вы не знаете, как работает функция Len в базе данных Microsoft Access, то посмотрите это видео. На простых запрос…
Как сбросить значения поля счетчика в базе Access (3 ПРОСТЫХ способа)Уроки по Microsoft Access
Если вы не знаете, как сбросить значения поля счетчика в базе данных Microsoft Access, то посмотрите это видео. В…
Как открыть форму Access на ОПРЕДЕЛЕННОЙ записиУроки по Microsoft Access
Если вы не знаете, как открыть форму на определенной записи в базе данных Microsoft Access, то посмотрите это видео….
Access. Таблицы. 1. Создание таблиц, поля, типы данных, основные свойства.Vigil IT-video
В видеоуроке рассказывается об основных спосбах создания таблиц в СУБД Access 2010, типах данных и основных…
Microsoft Access № 77: применение составного индекса в AccessАндрей Домостой
Установим в таблице Access проверку уникальности по четырём полям при помощи составного индекса Access. КУПИТЬ…
Как создать подчиненные формы в базе AccessУроки по Microsoft Access
Если вы не знаете, как создать подчиненные формы в базе данных Microsoft Access, то посмотрите это видео. Что вас…
Как сделать ЗАВИСИМЫЕ поля со списком в базе Access за 10 минутУроки по Microsoft Access
Если вы не знаете как создать зависимые поля со списком в базе данных Access, то посмотрите это видео. Всего…
КАК и ЗАЧЕМ использовать мастер подстановок в Microsoft AccessУроки по Microsoft Access
Если вы не знаете зачем использовать мастер подстановки в программе Microsoft Access, то посмотрите это видео….
Лекция 14: Access: Заполнение таблиц базы данныхНОУ ИНТУИТ
Режим таблицы, режим ввода записей БД, настройка вида таблиц БД, данные особых типов (рисунки, вложения)….
MS Access Урок #3. Связность данныхОбучение программы
MS Access Урок #3. Связность данных: 3.1. Ключевые поля 3.2. Связывание таблиц 3.3. Создание и использование индексов.
(Создание БД) 4. Создание связей между таблицами в DelphiЧастные уроки
Более подробно этот урок смотрите здесь — teach.com.ua/relationship/ Еще уроки по созданию базы данных в среде…
Типы ключей в базе данныхVolodya Mozhenkov
Если вы не сталкивались с понятиями «первичный ключ», «вторичный ключ», «внешний ключ», и «сложный ключ»,…
Готовая база данных Access Успеваемость студентов (2 из 4)Уроки по Microsoft Access
Если вы не знаете что такое готовая база данных Access, то посмотрите это видео. ВСЕГО ЗА 4 УРОКА мы создадим…
Microsoft Access № 5: формат поля Access и поясняющая надписьАндрей Домостой
Формат поля Access помогает автоматически создавать поясняющие надписи для значения поля. КУПИТЬ ВИДЕОКУРСЫ…
SQL: создаем запросы на выборку с условием (WHERE) в Microsoft AccessУроки по Microsoft Access
Если вы не знаете как создать SQL-запросы в базе данных Microsoft Access, то посмотрите это видео. На примере стандарт…
Как создать ЗАПРОСЫ НА ДОБАВЛЕНИЕ в Microsoft Access за 8 минутУроки по Microsoft Access
Если вы не знаете как создать запрос на добавление в программе Microsoft Access, то посмотрите это видео. Продолжае…
Как создать макросы в Microsoft Access за 7 минутУроки по Microsoft Access
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…
Как сделать нумерацию строк в отчете AccessУроки по Microsoft Access
Если вы не знаете, как сделать нумерацию строк в отчете базы данных Microsoft Access, то посмотрите это видео. Убеди…
Как создать базу данных Microsoft Access за 30 минутУроки по Microsoft Access
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете как сделать базу…
Как создать ЗАПРОСЫ НА ОБНОВЛЕНИЕ в Microsoft Access за 5 минутУроки по Microsoft Access
Если вы не знаете как создать запрос на обновление в программе Microsoft Access, то посмотрите это видео. Продолжае…
Как создать запрос с помощью мастера запросов в базе AccessУроки по Microsoft Access
Если вы не знаете как создать запрос с помощью мастера запросов в базе данных Microsoft Access, то посмотрите это…
Как и где скачать Microsoft Access бесплатноУроки по Microsoft Access
Если вы не знаете, как и где скачать Microsoft Access 2003, 2007, 2010, 2013, 2016 бесплатно, то посмотрите это видео. Будут показ…
Як створювати з’єднання між таблицями AccessAndrew Muliar
Как посчитать возраст в базе данных AccessУроки по Microsoft Access
Если вы не знаете, как посчитать возраст в базе данных Microsoft Access, то посмотрите это видео. На простом запросе…
Как поставить пароль на базу Microsoft Access ВСЕГО за 1 минутуУроки по Microsoft Access
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете как поставить…
SQL: создаем запрос на обновление (UPDATE) в Microsoft AccessУроки по Microsoft Access
Если вы не знаете как создать SQL-запросы в базе данных Microsoft Access, то посмотрите это видео. На примере стандарт…
Добавление и изменение первичного ключа таблицы в Access
Первичный ключ — это поле или набор полей со значениями, которые являются уникальными для всей таблицы. Значения ключа могут использоваться для обозначения всех записей, при этом каждая запись имеет отдельное значение ключа. Каждая таблица может содержать только один первичный ключ. Access может автоматически создавать поле первичного ключа при создании таблицы. Вы также можете самостоятельно указать поля, которые нужно использовать в качестве первичного ключа. В этой статье объясняется, как и зачем использовать первичные ключи.
Чтобы задать первичный ключ таблицы, откройте таблицу в режиме конструктора. Выберите нужное поле (или поля), а затем на ленте щелкните Ключевое поле.
Примечание: Эта статья относится только к классическим базам данных Access. В веб-приложениях Access и веб-базах данных первичный ключ для новых таблиц назначается автоматически. Несмотря на то что автоматические первичные ключи можно менять, делать это не рекомендуется.
В этой статье
Общие сведения о первичных ключах в Access
Используя поля первичных ключей, Access быстро связывает данные из нескольких таблиц и объединяет их понятным образом. Вы можете добавить поля первичных ключей в другие таблицы, чтобы ссылаться на таблицу, которая является источником первичного ключа. В других таблицах поля называются внешними ключами. Например, поле «ИД клиента» в таблице «Клиенты» также может отображаться в таблице «Заказы». В таблице «Клиенты» оно является первичным ключом. В таблице «Заказы» оно называется внешним ключом. Проще говоря, внешний ключ — это первичный ключ другой таблицы. Дополнительные сведения см. в статье Основные сведения о создании баз данных.
При переносе существующих данных в базу данных в них уже может существовать поле, которое можно использовать как первичный ключ. Часто в роли первичного ключа таблицы выступает уникальный идентификационный номер, например порядковый или инвентарный номер или код. Например, в таблице «Клиенты» для каждого клиента может быть указан уникальный код клиента. Поле кода клиента является первичным ключом.
Для первичного ключа автоматически создается индекс, ускоряющий выполнение запросов и операций. Кроме того, приложение Access проверяет наличие и уникальность значений в поле первичного ключа.
При создании таблицы в режиме таблицы Access автоматически создает первичный ключ с именем «Код» и типом данных «Счетчик».
Создание приемлемого первичного ключа
Чтобы правильно выбрать первичный ключ, следует учитывать несколько характеристик.
Ключ должен однозначно определять каждую строку.
В нем не должно быть пустых или отсутствующих значений — он всегда содержит значение.
Ключ крайне редко изменяется (в идеале — никогда).
Если не удается определить приемлемый ключ, создайте для него поле с типом данных «Счетчик». Поле «Счетчик» заполняется автоматически созданными значениями при первом сохранении каждой записи. Таким образом, поле «Счетчик» соответствует всем трем характеристикам приемлемого первичного ключа. Дополнительные сведения о добавлении поля «Счетчик» см. в статье Добавление поля счетчика в качестве первичного ключа.
Поле с типом данных «Счетчик» является хорошим первичным ключом.
Примеры неудачных первичных ключей
Любое поле, не имеющее одной или нескольких характеристик подходящего первичного ключа, не следует выбирать в качестве первичного ключа. Ниже представлено несколько примеров полей, которые не годятся на роль первичного ключа в таблице «Контакты», и пояснения, почему их не следует использовать.
Неподходящий первичный ключ
Может быть не уникальным и может изменяться
Как сделать два ключевых поля в access?
Определение ключевых полей
Выше неоднократно упоминалось понятие ключевого поля. Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Microsoft Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов.
В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ. Рассмотрим каждый из этих типов.
Для создания ключевого поля типа Счетчик необходимо в режиме Конструктора таблиц:
Если до сохранения созданной таблицы ключевые поля не были определены, то при сохранении будет выдано сообщение о создании ключевого поля. При нажатии кнопки Да (Yes) будет создано ключевое поле счетчика с именем Код (ID) и типом данных Счетчик (AutoNumber).
Для создания простого ключа достаточно иметь поле, которое содержит уникальные значения (например, коды или номера). Если выбранное поле содержит повторяющиеся или пустые значения, его нельзя определить как ключевое. Для определения записей, содержащих повторяющиеся данные, можно выполнить запрос на поиск повторяющихся записей. Если устранить повторы путем изменения значений невозможно, следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.
Составной ключ необходим в случае, если невозможно гарантировать уникальность записи с помощью одного поля. Он представляет собой комбинацию нескольких полей. Для определения составного ключа необходимо:
Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в окне Конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала нужно определить ключ, а затем нажать кнопку Индексы (Indexes) на панели инструментов Конструктор таблиц (Table Design). Затем в появившемся окне Индексы (Indexes) нужно указать другой порядок полей для индекса с именем Ключевое поле (Primary Key).
Рассмотрим в качестве примера применения составного ключа таблицу «Заказано» (OrderDetails) базы данных (Northwind) (рис. 2.23).
В данном случае в качестве составного ключа используются поля «Код заказа» (OrderlD) и «КодТовара» (ProductID), т. к. ни одно из этих полей в отдельности не гарантирует уникальность записи. При этом в таблице выводится не код товара, а наименование товара, т. к. поле «КодТовара» (ProductID) данной таблицы содержит подстановку из таблицы «Товары» (Products), а значения полей «КодТовара» (ProductID) этих таблиц связаны отношением «один-ко-многим» (одной записи таблицы «Товары» (Products) может соответствовать несколько записей таблицы «Заказано» (OrderDetails)). Оба поля могут содержать повторяющиеся значения. Так, один заказ может включать в себя несколько товаров, а в разные заказы могут включаться одинаковые товары. В то же время сочетание полей «КодЗаказа» (OrderlD) и «КодТовара» (ProductID) однозначно определяет каждую запись таблицы «Заказы» (OrderDetails).
Чтобы изменить ключ, необходимо:
Чтобы удалить ключ, необходимо:
ИНФОФИЗ — мой мир.
Весь мир в твоих руках — все будет так, как ты захочешь
Весь мир в твоих руках — все будет так, как ты захочешь
Как сказал.
Тестирование
Урок 37. Лабораторная работа № 24. Создание связей в базе данных
Лабораторная работа № 24
Тема: Создание связей в базе данных.
Цель работы: изучение приемов установки связей между таблицами базы данных.
Оборудование: ПК, Windows XP Professional, MS Access 2007.
Ход работы
1 В соответствие с заданием создать и заполнить таблицы БД «Фирма», установить связи между ними.
2 Продемонстрировать на компьютере заполненные таблицы, схему данных.
3 Ответить на контрольные вопросы.
4 Сделать вывод о проделанной работе.
Порядок выполнения:
1. Запустите Microsoft Access.
Для этого запустите Access, создайте новую базу данных, задайте имя базы данных Фирма, выберите место сохранения Вашей базы данных (диск Х:) и нажмите кнопку Создать. (подробный порядок действий описан в лабораторной работе № 23)
Таблица Сотрудники
Таблица Клиенты
Таблица Заказы
4. Установите ключевые поля.
Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля.
Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является Счетчик, так как значения в данном поле являются уникальными (т. е. исключают повторы).
При создании таблиц в режиме конструктора ключевое поле устанавливается автоматически. Откройте созданные Вами таблицы в режиме Конструктор и проверьте установленные ключевые поля:
1) в таблице Сотрудники ключевое поле Код сотрудника
2) в таблице Клиенты ключевое поле Код клиента
3) в таблице Заказы ключевое поле Код заказа
Если значение Ключевых полей не задалось автоматически, то задайте их вручную. Для этого откройте таблицу Сотрудники в режиме Конструктора. Нажмите правой кнопкой мыши на поле Код сотрудника и в появившемся контекстном меню выберите команду Ключевое поле. Если в таблице необходимо установить несколько ключевых полей, то выделить их можно, удерживая клавишу Ctrl. Для таблицы Клиенты установите ключевое поле Код клиента, а для таблицы Заказы — Код заказа.
5. Создайте раскрывающиеся списки с помощью Мастера подстановок.
Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Откройте таблицу Заказы в режиме Конструктора. Для поля Код клиента выберите тип данных Мастер подстановок.
В появившемся окне выберите команду Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее.
В списке таблиц выберите таблицу Клиенты и щелкните на кнопке Далее.
В списке Доступные поля выберите поле Код клиента и щелкните на кнопке со стрелкой >>, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поле Название компании и щелкните на кнопке Далее.
Выберите порядок сортировки списка по полю Название компании и нажмите кнопку Далее.
В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка, установите флажок Скрыть ключевой столбец и нажмите кнопку Далее.
На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово.
Сохраните полученный результат.
6. Аналогичным образом создайте раскрывающийся список для поля Код сотрудника.
Теперь в списке таблиц выберите таблицу Сотрудники
В списке Доступные поля выберите поля Код сотрудника, Фамилия, Имя.
Порядок сортировки списка выберите по полю Фамилия.
Все остальные действия проводятся аналогично пункту 6.
7. Создайте связей между таблицами.
Существует несколько типов отношений между таблицами:
— при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности;
— при отношении «один-к-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице;
— при отношении «многие-к-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой.
Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя.
Выполните команду вкладки Лента Работа с базами данных кнопка Схема данных
Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выбираются нужные таблицы. Для добавления в схему данных новой таблицы необходимо щелкнуть правой кнопкой мыши на схеме данных и в контекстном меню выбрать пункт Добавить таблицу.
Если связи между таблицами уже были заданы, то откроется окно Схема данных, на котором будут отображены таблицы и связи между ними.
Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице.Параметры связи можно изменить, нажав на кнопку Объединение. После установления всех необходимых параметров нажмите кнопку ОК.
Аналогично измените связь между таблицами Клиенты и Заказы.
В результате должна получиться схема данных, представленная на рисунке.
На схеме данных связи отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-к-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и «∞» вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса).
7. В таблицу Сотрудники внесите данные о 7 работниках.
8. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма.
9. В таблице Заказы оформите 5 заявок, поступивших на фирму.
10. Покажите работу преподавателю.
11. Ответьте на контрольные вопросы.
Контрольные вопросы:
1 С помощью чего можно создавать таблицы?
2 Что такое ключевое поле?
3 Как установить несколько ключевых полей?
4 Как установить связи между таблицами?
5 Какие существуют отношения между таблицами?
6 Что означают на схеме данных «1» и «∞»?
7 Зачем нужен Мастер подстановок?
8 Для чего нужен механизм запросов?
Методические указания к лабораторной работе № 24 Создание связей в базе данных
1. С помощью чего можно создавать таблицы?
Основным является режим создания таблиц с помощью Конструктора. В этом режиме пользователь сам может устанавливать параметры всех элементов структуры таблицы.
Мастер таблиц автоматически формирует таблицу по одному из шаблонов. Пользователю предлагается для выбора более 40 образцов таблиц. Каждая таблица шаблона содержит соответствующий набор полей, из которого можно выбрать нужные поля для включения их в создаваемую таблицу.
Режим Импорт таблиц позволяет переносить таблицы, созданные в других приложенияхWindows, в базы данных Access. При импорте таблиц следует помнить, что импортируемые таблицы, например электронные таблицы, созданные в Excel, должны иметь стандартный формат баз данных, когда каждая строка представляет собой отдельную запись, а столбцы являются полями.
В Режиме таблицы пользователь может создать новую таблицу, не определяя предварительно её структуру. При выборе этого режима открывается пустая таблица, в которую можно вводить данные. Любое поле этой таблицы можно переименовать в соответствии с требованиями пользователя. Этот способ целесообразно применять для создания небольших таблиц, структура которых будет настраиваться позже. Возможности создания таблиц в этом режиме ограничены, и они, как правило, требуют доработки в режимеконструктора.
2. Что такое ключевое поле? Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице.
3. Как установить несколько ключевых полей?
1. Открыть таблицу в режиме конструктора. 2. выделить необходимые поля, щелкая мышью по серому квадратику перед названием поля, удерживая при этом кл. Ctrl 3. нажать на панели инструментов кнопку «Ключевое поле» (желтый ключ).
4. Как установить связи между таблицами?
Логические связи устанавливаются между одноименными полями таблиц базы данных Access 2007. Связь данных в одной таблице с данными в других таблицах осуществляется через уникальные идентификаторы (ключи) или ключевые поля
5. Какие существуют отношения между таблицами?
Связи «многие ко многим»
При установлении связи «многие ко многим» каждой строке таблицы А может соответствовать множество строк таблицы Б и наоборот. Такая связь создается при помощи третьей таблицы, называемой соединительной, первичный ключ которой состоит из внешних ключей, связанных с таблицами А и Б. Например, между таблицами «Авторы» и «Книги» установлена связь вида «многие ко многим», задаваемая с помощью связей вида «один ко многим» между каждой из этих таблиц и таблицей «АвторыКниг». Первичный ключ таблицы «АвторыКниг» — это сочетание столбцов «ИД_автора» (первичного ключа таблицы авторов) и «ИД_книги» (первичного ключа таблицы заголовков).
Связи «один к одному»
При установлении связи «один к одному» каждой строке таблицы А может соответствовать только одна строка таблицы Б и наоборот. Связь «один к одному» создается в том случае, когда оба связанные столбца являются первичными ключами или на них наложены ограничения уникальности.
Этот вид связи используется редко, поскольку в такой ситуации связываемые данные обычно можно хранить в одной таблице. Использовать связь вида «один к одному» можно в указанных ниже случаях. • Чтобы разделить таблицу, содержащую слишком много столбцов. • Чтобы изолировать часть таблицы по соображениям безопасности. • Для хранения данных кратковременного использования, удалить которые проще всего путем очистки таблицы. • Для хранения данных, имеющих отношение только к подмножеству основной таблицы. В Microsoft Access сторона связи «один к одному», которой соответствует первичный ключ, обозначается символом ключа. Сторона связи, которой соответствует внешний ключ, также обозначается символом ключа.
Создание связей между таблицами
При установлении связи между таблицами связанные поля не обязательно должны иметь одинаковые названия. При этом у них должен быть один и тот же тип данных, если только поле, являющееся первичным ключом, не относится к типу «Счетчик». Поле типа «Счетчик» можно связать с полем типа «Числовой» только в том случае, если для свойства FieldSize (размер поля) каждого из них задано одно и то же значение. Например, можно связать столбцы типов «Счетчик» и «Числовой», если для свойства FieldSize каждого из них установлено значение «Длинное целое». Даже если оба связываемых столбца относятся к типу «Числовой», значение свойства FieldSize для обоих полей должно быть одинаковым.
Создание связей «один ко многим» или «один к одному»
Чтобы создать связь вида «один ко многим» или «один к одному», воспользуйтесь приведенной ниже последовательностью действий:
1. Закройте все открытые таблицы. Создавать или изменять связи между открытыми таблицами нельзя.
2. В Access версий 2002 или 2003 выполните указанные ниже действия.
a. Нажмите клавишу F11, чтобы перейти в окно базы данных. b. В меню Сервис выберите команду Связи.
В Access 2007 нажмите кнопку Связи в группе Показать или скрыть вкладки Инструменты для баз данных.
3. Если в базе данных отсутствуют связи, то автоматически появится диалоговое окно Добавление таблицы. Если окно Добавление таблицы не появилось, но при этом нужно добавить таблицы в список связываемых, выберите команду Добавить таблицу в меню Связи.
4. Дважды щелкните названия таблиц, которые необходимо связать, после чего закройте диалоговое окно Добавление таблицы. Чтобы связать таблицу с самой собой, добавьте ее два раза.
5. Перетащите связываемое поле из одной таблицы на связываемое поле в другой. Чтобы перетащить несколько полей, нажмите клавишу CTRL, щелкните каждое поле, а затем перетащите их.
В большинстве случаев понадобится перетащить поле первичного ключа (выделенное полужирным текстом) из одной таблицы на аналогичное поле (часто с тем же самым названием), называемое внешним ключом, другой таблицы.
6. Появится окно Изменение связей. Убедитесь, что в каждом из столбцов отображаются названия нужных полей. Если нужно, их можно изменить.
При необходимости задайте параметры связи. Если требуются сведения о конкретном элементе окна Изменение связей, нажмите кнопку со знаком вопроса, а затем щелкните соответствующий элемент. Эти параметры будут подробно описаны ниже.
7. Чтобы установить связь, нажмите кнопку Создать.
8. Повторите действия с 5 по 8 для каждой пары связываемых таблиц.
При закрытии диалогового окна Изменение связей Microsoft Access спросит, нужно ли сохранить макет. Вне зависимости от ответа на этот вопрос создаваемые связи сохраняются в базе данных.
Примечание. Создавать связи можно не только в таблицах, но и в запросах. При этом, однако, не обеспечивается целостность данных.
Создание связей «многие ко многим»
Чтобы создать связь вида «многие ко многим», выполните указанные ниже действия.
1. Создайте две таблицы, которые необходимо связать отношением «многие ко многим».
2. Создайте третью таблицу, называемую соединительной, и добавьте в нее поля с теми же определениями, что и поля первичных ключей в каждой из двух других таблиц. Поля первичных ключей соединительной таблицы служат внешними ключами. В соединительную таблицу, как и в любую другую, можно добавить и другие поля.
3. Задайте первичный ключ этой таблицы таким образом, чтобы он включал в себя поля первичных ключей обеих основных таблиц. Например, первичный ключ соединительной таблицы «АвторыКниг» будет состоять из полей «ИД_заказа» и «ИД_продукта».
Примечание. Чтобы создать первичный ключ, выполните указанные ниже действия.
a. Откройте таблицу в режиме конструктора. b. Выберите одно или несколько полей, которые необходимо определить в качестве первичного ключа. Чтобы выбрать одно поле, щелкните знак выбора строки для нужного поля.
Чтобы выбрать несколько полей, удерживайте нажатой клавишу CTRL и щелкните знак выбора строки для каждого из полей.
c. В Access версий 2002 или 2003 нажмите кнопку Первичный ключ на панели инструментов.
В Access 2007 нажмите кнопку Первичный ключ в группе Сервис вкладки Структура.
Примечание. Чтобы порядок следования полей в первичном ключе, состоящем из нескольких полей, отличался от такового в таблице, нажмите кнопку Индексы на панели инструментов, в результате чего появится диалоговое окно Индексы, в котором можно изменить порядок следования полей индекса под названием Ключевое Поле.
4. Установите связь вида «один ко многим» между каждой из двух главных таблиц и соединительной таблицей.
6. Что означают на схеме данных«1» и«∞»?Отношение, сколько раз поле с одной стороны относится к полю с другой.
7. Зачем нужен Мастер подстановок? Сделать более простым ввод значений в поле позволяет операция подстановки. Используя эту операцию, можно выбирать значения поля из списка. Список значений может быть как фиксированным, так и содержаться в таблице или запросе. Сформировать столбец подстановок для поля помогает Мастер подстановок (Lookup Wizard). Давайте создадим столбец подстановок для поля «КодКлиента» в таблице «Список рассылки оповещений». Это даст нам возможность при вводе данных в эту таблицу вводить не коды клиентов, которые мы не знаем, а выбирать из списка название организации, в которой работает данное лицо.
ИНФОФИЗ — мой мир.
Весь мир в твоих руках — все будет так, как ты захочешь
Весь мир в твоих руках — все будет так, как ты захочешь
Как сказал.
Тестирование
Урок 37. Лабораторная работа № 24. Создание связей в базе данных
Лабораторная работа № 24
Тема: Создание связей в базе данных.
Цель работы: изучение приемов установки связей между таблицами базы данных.
Оборудование: ПК, Windows XP Professional, MS Access 2007.
Ход работы
1 В соответствие с заданием создать и заполнить таблицы БД «Фирма», установить связи между ними.
2 Продемонстрировать на компьютере заполненные таблицы, схему данных.
3 Ответить на контрольные вопросы.
4 Сделать вывод о проделанной работе.
Порядок выполнения:
1. Запустите Microsoft Access.
Для этого запустите Access, создайте новую базу данных, задайте имя базы данных Фирма, выберите место сохранения Вашей базы данных (диск Х:) и нажмите кнопку Создать. (подробный порядок действий описан в лабораторной работе № 23)
Таблица Сотрудники
Таблица Клиенты
Таблица Заказы
4. Установите ключевые поля.
Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля.
Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является Счетчик, так как значения в данном поле являются уникальными (т. е. исключают повторы).
При создании таблиц в режиме конструктора ключевое поле устанавливается автоматически. Откройте созданные Вами таблицы в режиме Конструктор и проверьте установленные ключевые поля:
1) в таблице Сотрудники ключевое поле Код сотрудника
2) в таблице Клиенты ключевое поле Код клиента
3) в таблице Заказы ключевое поле Код заказа
Если значение Ключевых полей не задалось автоматически, то задайте их вручную. Для этого откройте таблицу Сотрудники в режиме Конструктора. Нажмите правой кнопкой мыши на поле Код сотрудника и в появившемся контекстном меню выберите команду Ключевое поле. Если в таблице необходимо установить несколько ключевых полей, то выделить их можно, удерживая клавишу Ctrl. Для таблицы Клиенты установите ключевое поле Код клиента, а для таблицы Заказы — Код заказа.
5. Создайте раскрывающиеся списки с помощью Мастера подстановок.
Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Откройте таблицу Заказы в режиме Конструктора. Для поля Код клиента выберите тип данных Мастер подстановок.
В появившемся окне выберите команду Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее.
В списке таблиц выберите таблицу Клиенты и щелкните на кнопке Далее.
В списке Доступные поля выберите поле Код клиента и щелкните на кнопке со стрелкой >>, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поле Название компании и щелкните на кнопке Далее.
Выберите порядок сортировки списка по полю Название компании и нажмите кнопку Далее.
В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка, установите флажок Скрыть ключевой столбец и нажмите кнопку Далее.
На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово.
Сохраните полученный результат.
6. Аналогичным образом создайте раскрывающийся список для поля Код сотрудника.
Теперь в списке таблиц выберите таблицу Сотрудники
В списке Доступные поля выберите поля Код сотрудника, Фамилия, Имя.
Порядок сортировки списка выберите по полю Фамилия.
Все остальные действия проводятся аналогично пункту 6.
7. Создайте связей между таблицами.
Существует несколько типов отношений между таблицами:
— при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности;
— при отношении «один-к-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице;
— при отношении «многие-к-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой.
Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя.
Выполните команду вкладки Лента Работа с базами данных кнопка Схема данных
Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выбираются нужные таблицы. Для добавления в схему данных новой таблицы необходимо щелкнуть правой кнопкой мыши на схеме данных и в контекстном меню выбрать пункт Добавить таблицу.
Если связи между таблицами уже были заданы, то откроется окно Схема данных, на котором будут отображены таблицы и связи между ними.
Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице.Параметры связи можно изменить, нажав на кнопку Объединение. После установления всех необходимых параметров нажмите кнопку ОК.
Аналогично измените связь между таблицами Клиенты и Заказы.
В результате должна получиться схема данных, представленная на рисунке.
На схеме данных связи отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-к-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и «∞» вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса).
7. В таблицу Сотрудники внесите данные о 7 работниках.
8. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма.
9. В таблице Заказы оформите 5 заявок, поступивших на фирму.
10. Покажите работу преподавателю.
11. Ответьте на контрольные вопросы.
Контрольные вопросы:
1 С помощью чего можно создавать таблицы?
2 Что такое ключевое поле?
3 Как установить несколько ключевых полей?
4 Как установить связи между таблицами?
5 Какие существуют отношения между таблицами?
6 Что означают на схеме данных «1» и «∞»?
7 Зачем нужен Мастер подстановок?
8 Для чего нужен механизм запросов?
Методические указания к лабораторной работе № 24 Создание связей в базе данных
Ключевое поле таблицы MS Access, его назначение, способы задания
База данных может состоять из нескольких таблиц, содержащих различную информацию. Эти таблицы связаны между собой каким-либо определённым полем, называемым ключевым полем.
Ключевое поле позволяет однозначно идентифицировать каждую запись таблицы, т.е. каждое значение этого поля отличает одну запись от другой.
Для Access обязательным является определение ключевого поля для таблицы. Для его определения достаточно выделить поле и выбрать команду Ключевое поле меню Правка. Если требуется определить составной ключ, но необходимо выделить требуемые поля при нажатой клавише Ctrl, а затем выбрать командуКлючевое поле. При определении ключевого поля автоматически создается уникальный индекс, определяющий физический порядок записей в таблице. Этот индекс является первичным индексом для таблицы и имеет зарезервированное имяPrimaryKey. Для составных ключей существенным может оказаться порядок образующих ключ полей, так как упорядочение записей будет проводиться вначале по первому полю, затем по второму и т.д. Для внешних полей при создании связи также происходит автоматическое создание индекса (в данном случае вторичного).
Связи между таблицами дают возможность совместно использовать данные из различных таблиц. Например, одна таблица содержит информацию о профессиональной деятельности сотрудников предприятия (таблица Сотрудник), другая таблица — информацию об их месте жительства (таблица Адрес). Допустим, на основании этих двух таблиц необходимо получить результирующую таблицу, содержащую поля Фамилия и инициалы, Должность и Адрес проживания. Причём полеФамилия и инициалы может быть в обеих таблицах, поле Должность — в таблице Сотрудник, а поле Адрес проживания — в таблице Адрес. Ни одно из перечисленных полей не может являться ключевым, т. к. оно однозначно не определяет каждую запись.
В качестве ключевого поля в этих таблицах можно использовать поле Код типаСчётчик, автоматически формируемое Access при создании структуры таблицы, или в каждой таблице задать поле Табельный номер, по которому затем связать таблицы. Таблицы при этом будут связаны так называемым реляционным отношением. Последовательность действий пользователя при создании таблиц Сотрудник и Адрес.
Виды индексированных полей в MS Access, примеры
Свойство «Индексированное поле» (Indexed) определяет индекс, создаваемый по одному полю. Индекс ускоряет выполнение запросов, в которых используются индексированные поля, и операции сортировки и группировки. Например, если часто выполняется поиск по полю «Фамилия» в таблице «Сотрудники», следует создать индекс для этого поля.
Значение данного свойства можно задать только в окне свойств в режиме конструктора таблицы. Индекс по одному полю может быть определен путем установки свойства Индексированное поле (Indexed). Кроме того, можно выбрать команду Индексы в меню Вид или нажать кнопку «Индексы» на панели инструментов. Будет открыто окно индексов.
Вкладка Подстановка на бланке свойств поля используется для указания элемента управления, используемого по умолчанию для отображения поля. После выбора элемента управления на вкладке Подстановка выводятся все дополнительные свойства, необходимые для определения конфигурации элемента управления. MicrosoftAccess задает значения этих свойств автоматически, если в режиме конструктора таблицы для поля в столбце «Тип данных» выбирается «Мастер подстановок». Значения данного свойства и относящиеся к нему типы элементов управления влияют на отображение поля как в режиме таблицы, так и в режиме формы.
Рассмотрим некоторые из этих дополнительных свойств:
Свойство «Тип элемента управления»(DisplayControl) содержит раскрывающийся список типов элементов управления, доступных для выбранного поля. Для полей с типами «Текстовый» или «Числовой» для данного свойства возможен выбор поля, списка или поля со списком. Для логических полей возможен выбор поля, поля со списком или флажка.
Свойства «Тип источника строк» (RowSourceType), «Источник строк» (RowSource) определят источник данных для списка или поля со списком. Например, для того чтобы вывести в строках списка данные из запроса «Список клиентов», следует выбрать для свойства Тип источника строк значение «Таблица/запрос» и указать в свойстве Источник строк имя запроса «Список клиентов». Если список должен содержать небольшое число значений, которые не должны изменяться, можно выбрать в свойстве Тип источника строк (RowSourceType) «Список значений» и ввести образующие список значения в ячейку свойства Источник строк (RowSource). Элементы списка отделяются друг от друга точкой с запятой.
Дата добавления: 2018-02-28 ; просмотров: 830 ; ЗАКАЗАТЬ РАБОТУ
Как сделать несколько ключевых полей в access?
Определение ключевых полей
Выше неоднократно упоминалось понятие ключевого поля. Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Microsoft Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов.
В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ. Рассмотрим каждый из этих типов.
Для создания ключевого поля типа Счетчик необходимо в режиме Конструктора таблиц:
Если до сохранения созданной таблицы ключевые поля не были определены, то при сохранении будет выдано сообщение о создании ключевого поля. При нажатии кнопки Да (Yes) будет создано ключевое поле счетчика с именем Код (ID) и типом данных Счетчик (AutoNumber).
Для создания простого ключа достаточно иметь поле, которое содержит уникальные значения (например, коды или номера). Если выбранное поле содержит повторяющиеся или пустые значения, его нельзя определить как ключевое. Для определения записей, содержащих повторяющиеся данные, можно выполнить запрос на поиск повторяющихся записей. Если устранить повторы путем изменения значений невозможно, следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.
Составной ключ необходим в случае, если невозможно гарантировать уникальность записи с помощью одного поля. Он представляет собой комбинацию нескольких полей. Для определения составного ключа необходимо:
Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в окне Конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала нужно определить ключ, а затем нажать кнопку Индексы (Indexes) на панели инструментов Конструктор таблиц (Table Design). Затем в появившемся окне Индексы (Indexes) нужно указать другой порядок полей для индекса с именем Ключевое поле (Primary Key).
Рассмотрим в качестве примера применения составного ключа таблицу «Заказано» (OrderDetails) базы данных (Northwind) (рис. 2.23).
В данном случае в качестве составного ключа используются поля «Код заказа» (OrderlD) и «КодТовара» (ProductID), т. к. ни одно из этих полей в отдельности не гарантирует уникальность записи. При этом в таблице выводится не код товара, а наименование товара, т. к. поле «КодТовара» (ProductID) данной таблицы содержит подстановку из таблицы «Товары» (Products), а значения полей «КодТовара» (ProductID) этих таблиц связаны отношением «один-ко-многим» (одной записи таблицы «Товары» (Products) может соответствовать несколько записей таблицы «Заказано» (OrderDetails)). Оба поля могут содержать повторяющиеся значения. Так, один заказ может включать в себя несколько товаров, а в разные заказы могут включаться одинаковые товары. В то же время сочетание полей «КодЗаказа» (OrderlD) и «КодТовара» (ProductID) однозначно определяет каждую запись таблицы «Заказы» (OrderDetails).
Чтобы изменить ключ, необходимо:
Чтобы удалить ключ, необходимо:
1. С помощью чего можно создавать таблицы?
Основным является режим создания таблиц с помощью Конструктора. В этом режиме пользователь сам может устанавливать параметры всех элементов структуры таблицы.
Мастер таблиц автоматически формирует таблицу по одному из шаблонов. Пользователю предлагается для выбора более 40 образцов таблиц. Каждая таблица шаблона содержит соответствующий набор полей, из которого можно выбрать нужные поля для включения их в создаваемую таблицу.
Режим Импорт таблиц позволяет переносить таблицы, созданные в других приложенияхWindows, в базы данных Access. При импорте таблиц следует помнить, что импортируемые таблицы, например электронные таблицы, созданные в Excel, должны иметь стандартный формат баз данных, когда каждая строка представляет собой отдельную запись, а столбцы являются полями.
В Режиме таблицы пользователь может создать новую таблицу, не определяя предварительно её структуру. При выборе этого режима открывается пустая таблица, в которую можно вводить данные. Любое поле этой таблицы можно переименовать в соответствии с требованиями пользователя. Этот способ целесообразно применять для создания небольших таблиц, структура которых будет настраиваться позже. Возможности создания таблиц в этом режиме ограничены, и они, как правило, требуют доработки в режимеконструктора.
2. Что такое ключевое поле? Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице.
3. Как установить несколько ключевых полей?
1. Открыть таблицу в режиме конструктора. 2. выделить необходимые поля, щелкая мышью по серому квадратику перед названием поля, удерживая при этом кл. Ctrl 3. нажать на панели инструментов кнопку «Ключевое поле» (желтый ключ).
4. Как установить связи между таблицами?
Логические связи устанавливаются между одноименными полями таблиц базы данных Access 2007. Связь данных в одной таблице с данными в других таблицах осуществляется через уникальные идентификаторы (ключи) или ключевые поля
5. Какие существуют отношения между таблицами?
Связи «многие ко многим»
При установлении связи «многие ко многим» каждой строке таблицы А может соответствовать множество строк таблицы Б и наоборот. Такая связь создается при помощи третьей таблицы, называемой соединительной, первичный ключ которой состоит из внешних ключей, связанных с таблицами А и Б. Например, между таблицами «Авторы» и «Книги» установлена связь вида «многие ко многим», задаваемая с помощью связей вида «один ко многим» между каждой из этих таблиц и таблицей «АвторыКниг». Первичный ключ таблицы «АвторыКниг» — это сочетание столбцов «ИД_автора» (первичного ключа таблицы авторов) и «ИД_книги» (первичного ключа таблицы заголовков).
Связи «один к одному»
При установлении связи «один к одному» каждой строке таблицы А может соответствовать только одна строка таблицы Б и наоборот. Связь «один к одному» создается в том случае, когда оба связанные столбца являются первичными ключами или на них наложены ограничения уникальности.
Этот вид связи используется редко, поскольку в такой ситуации связываемые данные обычно можно хранить в одной таблице. Использовать связь вида «один к одному» можно в указанных ниже случаях. • Чтобы разделить таблицу, содержащую слишком много столбцов. • Чтобы изолировать часть таблицы по соображениям безопасности. • Для хранения данных кратковременного использования, удалить которые проще всего путем очистки таблицы. • Для хранения данных, имеющих отношение только к подмножеству основной таблицы. В Microsoft Access сторона связи «один к одному», которой соответствует первичный ключ, обозначается символом ключа. Сторона связи, которой соответствует внешний ключ, также обозначается символом ключа.
Создание связей между таблицами
При установлении связи между таблицами связанные поля не обязательно должны иметь одинаковые названия. При этом у них должен быть один и тот же тип данных, если только поле, являющееся первичным ключом, не относится к типу «Счетчик». Поле типа «Счетчик» можно связать с полем типа «Числовой» только в том случае, если для свойства FieldSize (размер поля) каждого из них задано одно и то же значение. Например, можно связать столбцы типов «Счетчик» и «Числовой», если для свойства FieldSize каждого из них установлено значение «Длинное целое». Даже если оба связываемых столбца относятся к типу «Числовой», значение свойства FieldSize для обоих полей должно быть одинаковым.
Создание связей «один ко многим» или «один к одному»
Чтобы создать связь вида «один ко многим» или «один к одному», воспользуйтесь приведенной ниже последовательностью действий:
1. Закройте все открытые таблицы. Создавать или изменять связи между открытыми таблицами нельзя.
2. В Access версий 2002 или 2003 выполните указанные ниже действия.
a. Нажмите клавишу F11, чтобы перейти в окно базы данных. b. В меню Сервис выберите команду Связи.
В Access 2007 нажмите кнопку Связи в группе Показать или скрыть вкладки Инструменты для баз данных.
3. Если в базе данных отсутствуют связи, то автоматически появится диалоговое окно Добавление таблицы. Если окно Добавление таблицы не появилось, но при этом нужно добавить таблицы в список связываемых, выберите команду Добавить таблицу в меню Связи.
4. Дважды щелкните названия таблиц, которые необходимо связать, после чего закройте диалоговое окно Добавление таблицы. Чтобы связать таблицу с самой собой, добавьте ее два раза.
5. Перетащите связываемое поле из одной таблицы на связываемое поле в другой. Чтобы перетащить несколько полей, нажмите клавишу CTRL, щелкните каждое поле, а затем перетащите их.
В большинстве случаев понадобится перетащить поле первичного ключа (выделенное полужирным текстом) из одной таблицы на аналогичное поле (часто с тем же самым названием), называемое внешним ключом, другой таблицы.
6. Появится окно Изменение связей. Убедитесь, что в каждом из столбцов отображаются названия нужных полей. Если нужно, их можно изменить.
При необходимости задайте параметры связи. Если требуются сведения о конкретном элементе окна Изменение связей, нажмите кнопку со знаком вопроса, а затем щелкните соответствующий элемент. Эти параметры будут подробно описаны ниже.
7. Чтобы установить связь, нажмите кнопку Создать.
8. Повторите действия с 5 по 8 для каждой пары связываемых таблиц.
При закрытии диалогового окна Изменение связей Microsoft Access спросит, нужно ли сохранить макет. Вне зависимости от ответа на этот вопрос создаваемые связи сохраняются в базе данных.
Примечание. Создавать связи можно не только в таблицах, но и в запросах. При этом, однако, не обеспечивается целостность данных.
Создание связей «многие ко многим»
Чтобы создать связь вида «многие ко многим», выполните указанные ниже действия.
1. Создайте две таблицы, которые необходимо связать отношением «многие ко многим».
2. Создайте третью таблицу, называемую соединительной, и добавьте в нее поля с теми же определениями, что и поля первичных ключей в каждой из двух других таблиц. Поля первичных ключей соединительной таблицы служат внешними ключами. В соединительную таблицу, как и в любую другую, можно добавить и другие поля.
3. Задайте первичный ключ этой таблицы таким образом, чтобы он включал в себя поля первичных ключей обеих основных таблиц. Например, первичный ключ соединительной таблицы «АвторыКниг» будет состоять из полей «ИД_заказа» и «ИД_продукта».
Примечание. Чтобы создать первичный ключ, выполните указанные ниже действия.
a. Откройте таблицу в режиме конструктора. b. Выберите одно или несколько полей, которые необходимо определить в качестве первичного ключа. Чтобы выбрать одно поле, щелкните знак выбора строки для нужного поля.
Чтобы выбрать несколько полей, удерживайте нажатой клавишу CTRL и щелкните знак выбора строки для каждого из полей.
c. В Access версий 2002 или 2003 нажмите кнопку Первичный ключ на панели инструментов.
В Access 2007 нажмите кнопку Первичный ключ в группе Сервис вкладки Структура.
Примечание. Чтобы порядок следования полей в первичном ключе, состоящем из нескольких полей, отличался от такового в таблице, нажмите кнопку Индексы на панели инструментов, в результате чего появится диалоговое окно Индексы, в котором можно изменить порядок следования полей индекса под названием Ключевое Поле.
4. Установите связь вида «один ко многим» между каждой из двух главных таблиц и соединительной таблицей.
6. Что означают на схеме данных«1» и«∞»?Отношение, сколько раз поле с одной стороны относится к полю с другой.
7. Зачем нужен Мастер подстановок? Сделать более простым ввод значений в поле позволяет операция подстановки. Используя эту операцию, можно выбирать значения поля из списка. Список значений может быть как фиксированным, так и содержаться в таблице или запросе. Сформировать столбец подстановок для поля помогает Мастер подстановок (Lookup Wizard). Давайте создадим столбец подстановок для поля «КодКлиента» в таблице «Список рассылки оповещений». Это даст нам возможность при вводе данных в эту таблицу вводить не коды клиентов, которые мы не знаем, а выбирать из списка название организации, в которой работает данное лицо.
ИНФОФИЗ — мой мир.
Весь мир в твоих руках — все будет так, как ты захочешь
Весь мир в твоих руках — все будет так, как ты захочешь
Как сказал.
Тестирование
Урок 37. Лабораторная работа № 24. Создание связей в базе данных
Лабораторная работа № 24
Тема: Создание связей в базе данных.
Цель работы: изучение приемов установки связей между таблицами базы данных.
Оборудование: ПК, Windows XP Professional, MS Access 2007.
Ход работы
1 В соответствие с заданием создать и заполнить таблицы БД «Фирма», установить связи между ними.
2 Продемонстрировать на компьютере заполненные таблицы, схему данных.
3 Ответить на контрольные вопросы.
4 Сделать вывод о проделанной работе.
Порядок выполнения:
1. Запустите Microsoft Access.
Для этого запустите Access, создайте новую базу данных, задайте имя базы данных Фирма, выберите место сохранения Вашей базы данных (диск Х:) и нажмите кнопку Создать. (подробный порядок действий описан в лабораторной работе № 23)
Таблица Сотрудники
Таблица Клиенты
Таблица Заказы
4. Установите ключевые поля.
Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля.
Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является Счетчик, так как значения в данном поле являются уникальными (т. е. исключают повторы).
При создании таблиц в режиме конструктора ключевое поле устанавливается автоматически. Откройте созданные Вами таблицы в режиме Конструктор и проверьте установленные ключевые поля:
1) в таблице Сотрудники ключевое поле Код сотрудника
2) в таблице Клиенты ключевое поле Код клиента
3) в таблице Заказы ключевое поле Код заказа
Если значение Ключевых полей не задалось автоматически, то задайте их вручную. Для этого откройте таблицу Сотрудники в режиме Конструктора. Нажмите правой кнопкой мыши на поле Код сотрудника и в появившемся контекстном меню выберите команду Ключевое поле. Если в таблице необходимо установить несколько ключевых полей, то выделить их можно, удерживая клавишу Ctrl. Для таблицы Клиенты установите ключевое поле Код клиента, а для таблицы Заказы — Код заказа.
5. Создайте раскрывающиеся списки с помощью Мастера подстановок.
Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Откройте таблицу Заказы в режиме Конструктора. Для поля Код клиента выберите тип данных Мастер подстановок.
В появившемся окне выберите команду Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее.
В списке таблиц выберите таблицу Клиенты и щелкните на кнопке Далее.
В списке Доступные поля выберите поле Код клиента и щелкните на кнопке со стрелкой >>, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поле Название компании и щелкните на кнопке Далее.
Выберите порядок сортировки списка по полю Название компании и нажмите кнопку Далее.
В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка, установите флажок Скрыть ключевой столбец и нажмите кнопку Далее.
На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово.
Сохраните полученный результат.
6. Аналогичным образом создайте раскрывающийся список для поля Код сотрудника.
Теперь в списке таблиц выберите таблицу Сотрудники
В списке Доступные поля выберите поля Код сотрудника, Фамилия, Имя.
Порядок сортировки списка выберите по полю Фамилия.
Все остальные действия проводятся аналогично пункту 6.
7. Создайте связей между таблицами.
Существует несколько типов отношений между таблицами:
— при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности;
— при отношении «один-к-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице;
— при отношении «многие-к-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой.
Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя.
Выполните команду вкладки Лента Работа с базами данных кнопка Схема данных
Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выбираются нужные таблицы. Для добавления в схему данных новой таблицы необходимо щелкнуть правой кнопкой мыши на схеме данных и в контекстном меню выбрать пункт Добавить таблицу.
Если связи между таблицами уже были заданы, то откроется окно Схема данных, на котором будут отображены таблицы и связи между ними.
Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице.Параметры связи можно изменить, нажав на кнопку Объединение. После установления всех необходимых параметров нажмите кнопку ОК.
Аналогично измените связь между таблицами Клиенты и Заказы.
В результате должна получиться схема данных, представленная на рисунке.
На схеме данных связи отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-к-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и «∞» вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса).
7. В таблицу Сотрудники внесите данные о 7 работниках.
8. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма.
9. В таблице Заказы оформите 5 заявок, поступивших на фирму.
10. Покажите работу преподавателю.
11. Ответьте на контрольные вопросы.
Контрольные вопросы:
1 С помощью чего можно создавать таблицы?
2 Что такое ключевое поле?
3 Как установить несколько ключевых полей?
4 Как установить связи между таблицами?
5 Какие существуют отношения между таблицами?
6 Что означают на схеме данных «1» и «∞»?
7 Зачем нужен Мастер подстановок?
8 Для чего нужен механизм запросов?
Методические указания к лабораторной работе № 24 Создание связей в базе данных
Как сделать несколько ключевых полей в access?
Сила реляционных баз данных заключается в их способности хранить информацию таким образом, что она всегда определяется однозначно, даже если распределена по различным таблицам, а также в возможности быстрого поиска необходимых данных. В основе этих важных свойств лежат понятия ключевых полей и индексов.
Между этими двумя понятиями очень много общего, хотя предназначены они для совершенно различных целей, и организованы они тоже по-разному. Ключевые поля предназначены для однозначного определения записей в таблице и связывания между собой распределенных по различным таблицам данных об одном и том же объекте. Индексы предназначены для оптимизации поиска и сортировки информации. Поначалу все это может вызывать некоторые затруднения, однако с приобретением необходимого опыта все станет на свои места.
Ключевые поля бывают двух типов — первичные (Primary Key) и внешние (Foreign Key). Первичные ключи служат для однозначного определения записи в таблице и должны содержать уникальные для данной таблицы значения. Система автоматически предотвращает ввод в такое поле повторяющихся и пустых (Null )значений.
Самый простой способ создания первичного ключа — добавить в таблицу поле типа счетчик (AutoNumber) и затем нажать кнопку с изображением ключа на панели инструментов. В результате этого свойство счетчика Обязательное поле (Required) примет значение Да (Yes), а свойство Индексированное поле (Indexed) — Да (совпадения не допускаются) (Yes (No Duplicates)). Признаком первичного ключа является иконка с изображением ключа слева от наименования поля. Кроме того, первичный ключ автоматически включается в список индексов таблицы под именем PrimaryKey. Использование счетчика в этом случае является очень удобным, поскольку Microsoft Access сам заботится о правильном заполнении этого поля.
В качестве первичного ключа можно также определить любое подходящее поле (кроме поля типа объект OLE (OLE Object)) либо не содержащее данных, либо содержащее уникальные непустые значения. Такой первичный ключ, состоящий из одного единственного поля, называется простым (Single-field).
Другая основная функция ключевых полей — создание связей между таблицами. В этом случае первичному ключу одной таблицы (главной) соответствует внешний ключ связанной с ней таблицы. Внешний ключ содержит значения связанного с ним поля, являющегося первичным ключом главной таблицы, и никаких других значений содержать не может (иначе нарушится целостность данных). Значения во внешнем ключе могут и не быть уникальными, но не должны быть пустыми (Null).Другими словами, значения первичного ключа должны быть уникальными, а внешний ключ может содержать несколько одинаковых значений, соответствующих конкретному значению первичного ключа.
Первичный и внешний ключи должны быть одинакового типа, иначе при создании связи между таблицами по этим полям Microsoft Access выдаст сообщение об ошибке и связь создана не будет. Полю типа счетчик (AutoNumber) эквивалентен числовой тип, свойство Размер поля (Field Size) которого установлено в значение Длинное целое (Long Integer). Например, таблицы Сотрудники (Employees) и Заказы (Orders) учебной базы данных Борей (Northwind) связаны по одноименным полям КодСотрудника (EmployeeID). Соответствующее поле в таблице Сотрудники (Employees) является первичным ключом типа счетчик (AutoNumber), а в таблице Заказы (Orders) — внешним ключом типа длинное целое (Long Integer).
Для ускорения поиска и сортировки информации в таблицах используются индексы. Применение индексов для поиска в некотором смысле похоже на использование содержания в книге. Для того чтобы найти необходимый раздел книги, мы обычно открываем содержание, находим в нем нужный нам раздел и определяем на какой странице он начинается. Далее мы просто открываем книгу на этой странице и получаем желаемое.
Индексы, как и первичные ключи, могут быть простыми (состоящими из одного поля) и составными (содержащими несколько полей). Для того чтобы создать простой индекс, следует выбрать в режиме конструктора таблицы (Design View) нужное поле и установить его свойство Индексированное поле (Indexed) в одно из двух значений: Да (Совпадения не допускаются) (Yes (No Duplicates)) или Да (Допускаются совпадения) (Yes (Duplicates OK)). В результате будет создан индекс с именем, совпадающим с наименованием поля.
Для того чтобы убедиться, что индекс действительно создан, можно воспользоваться диалоговым окном Индексы (Indexes). Отобразить это окно на экране можно, выбрав одноименный пункт меню Вид (View) или нажав кнопку с изображением молнии () на панели инструментов.
Основное предназначение диалогового окна Индексы (Indexes) — создание и модификация простых и составных индексов. Кроме того, для составных индексов это окно является единственным доступным средством создания. В верхней части окна Индексы (Indexes) расположена таблица с тремя столбцами (см. рис. 3.19). Для каждого индекса в этой таблице можно задать его наименование (столбец Индекс (Index Name)), имя входящего в него поля (столбец Имя поля (Field Name)) и Порядок сортировки (Sort Order).
Чтобы создать простой индекс с использованием диалогового окна Индексы (Indexes) необходимо в первом столбце задать наименование индекса, затем из списка имеющихся в таблице полей во втором столбце выбрать имя индексируемого поля. Порядок сортировки (в третьем столбце) автоматически установится в значение По возрастанию (Ascending). При необходимости, этот порядок можно изменить, выбрав значение По убыванию (Descending).
Почти такая же последовательность действий выполняется и при создании составного индекса. Сначала задается имя индекса, и из списка полей выбирается первое поле, входящее в индекс. Строчкой ниже выбирается следующее поле и т.д. Следует заметить, что имя задается только для первого поля, и, кроме того, только для этого поля доступно изменение свойств индекса. Порядок сортировки, однако, можно задать для каждого поля свой.
Еще раз обратите внимание на рисунок 3.19, на котором изображено диалоговое окно Индексы (Indexes), открытое для таблицы Заказано (Order Details). Как видно из рисунка, таблица Заказано (Order Details) содержит составной первичный ключ, имеющий поля КодЗаказа (OrderlD) и КодТовара (ProductID). Об этом свидетельствует иконка с изображением ключа в левой части каждой из строчек, соответствующих ключевым полям. Соответствующий первичному ключу индекс, как уже упоминалось выше, автоматически добавляется в таблицу под именем PrimaryKey. Кроме того, по полям КодЗаказа (OrderlD) и КодТовара (ProductID) созданы еще и простые индексы. Таким образом, каждое из этих полей входит в два разных индекса.
В нижней части диалогового окна Индексы (Indexes) расположен бланк свойств индексов. В этом бланке имеется возможность задать или модифицировать одно из трех свойств, кратко описанных ниже.
Ключевое поле (Primary). Для индексов, содержащих ключевые поля, это свойств должно иметь значение Да (Yes). Если выбрать значение Нет (No), то ключевое поле перестает быть таковым. Таким образом, при помощи этого свойства можно создавать первичные ключи и в окне Индексы (Indexes).
Уникальный индекс (Unique). Это свойство определяет, должен ли индекс содержать уникальные значения или допускается ввод в соответствующее индексу поле повторяющихся данных. Как и следовало ожидать, для первичного ключа не удастся задать значение Нет (No).
Пропуск пустых полей (Ignore Nulls). Если задано значение Да (Yes), то записи, содержащие в этом поле пустое значение (Null), будут исключаться из индекса.
В заключение хотелось бы привести несколько соображений по поводу применения индексов. Основное предназначение индексов — ускорять поиск информации. Казалось бы, чем больше индексов, тем лучше. Однако это совершенно не так. С одной стороны, ускоряя поиск, индексы приводят к замедлению работы приложения при вводе и модификации данных в таблицах. Это связано с тем, что каждый раз при этом происходит обновление всех индексов таблицы, связанных с модифицированными полями (или всех индексов при добавлении или удалении записи).
При создании индексов следует придерживаться следующих рекомендаций.
Создание БД. Описание поля: тип, размер, формат и прочие свойства поля (MS Access).
Основные свойства полей базы данных:
Имя поля–определяет, как следует обращаться к данным этого поля при автоматических операциях с базой (по умолчанию имена полей используются в качестве заголовков столбцов таблиц). Имя поля может содержать до 64 символов (буквы, цифры, пробелы и специальные символы, за исключением точки, восклицательного знака, квадратных скобок).
Имя поля не может начинать с пробела.
Тип поля – определяет тип данных, которые могут содержаться в данном поле.
Размер поля – определяет предельную длину данных, которые могут размещаться в данном поле.
Формат поля – определяет способ форматирования данных в ячейках, принадлежащих полю.
Маска вода – определяет форму, в которой вводятся данные в поле.
Подпись – определяет заголовок столбца таблицы для данного поля. Если подпись не указана, то в качестве заголовка столбца используется свойство Имя поля.
Значениепо умолчанию – то значение, которое вводится в ячейки поля автоматически.
Условие на значение – ограничение, используемое для проверки правильности ввода данных. Это средство автоматизации ввода используется, как правило, для данных, имеющих числовой тип, денежный тип или тип даты.
Сообщение об ошибке – текстовое сообщение, которое выдается автоматически при попытке ввода в поле данных, не удовлетворяющих условиям, заданным в свойстве Условие на значение. – ограничение, используемое для проверки правильности ввода данных. Это средство автоматизации ввода используется, как правило, для данных, имеющих числовой тип, денежный тип или тип даты.
Обязательное поле – свойство, определяющее обязательность заполнения данного поля при наполнении базы.
Пустые строки – свойство, разрешающее ввод пустых строковых данных. От свойства Обязательное поле отличается тем, что относится не ко всем типом данных, а лишь к текстовым.
Индексированное поле – если поле обладает этим свойством, все операции, связанные с поиском или сортировкой записей по значению, хранящемуся в данном поле, существенно ускоряется. Кроме того, для индексированных полей можно сделать так, что значение в записях будут проверяться по этому полю на наличие повторов, что позволяет автоматически исключить дублирование данных.
Вопрос № 51 Ключевое поле, его назначение и использование в MS Access.
Для однозначного определения записей в таблице используется метод создания ключевого поля. Ключевое поле — это индекс, присваиваемый таблице (здесь уместно провести аналогию с почтовым индексом) и строящийся на основе одного или нескольких полей записей. Ключевое поле предназначено для установления связи с дочерней таблицей или родительской таблицей (см. раздел «Связь между таблицами»). В последнем случае оно называется внешним ключом.
Ключевое поле — одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. В межтабличных связях ключевые поля используются для ссылок на указанные записи в одной таблице из другой таблицы. При ссылке на ключевое поле из другой таблицы оно называется полем внешнего ключа.
Уникальный индекс — индекс, определенный для поля с заданным для свойства Индексированное поле (Indexed) значением «Да (Совпадения не допускаются)». При этом ввод в индексированное поле повторяющихся значений становится невозможным. Для ключевых полей уникальный индекс создается автоматически.
Внешний ключ — одно или несколько полей в таблице, содержащих ссылку на ключевое поле или поля в другой таблице. Поле внешнего ключа определяет способ связывания таблиц, содержимое поля внешнего ключа должно совпадать с содержимым ключевого поля. Например, таблица «Товары» в демонстрационной базе данных «Борей» содержит поле внешнего ключа «Поставщик», которое ссылается на ключевое поле «Поставщик» в таблице «Поставщики». С помощью данной связи в таблице «Товары» для каждого товара выводится имя поставщика из таблицы «Поставщики».
Вопрос № 52 Структура базы данных в MS Access. Связь между таблицами, виды связей.
структура базы определяет методы занесения данных и хранения их в базе
База данных состоит из одной или нескольких таблиц.
Каждая таблица имеет одно или несколько полей. В Access Это Имя поля, тип данных, описание.
В каждой таблице имеется одна или несколько записей.
Виды связей между таблицами
Связь осуществляется путем сопоставления данных в ключевых столбцах; обычно это столбцы, имеющие в обеих таблицах одинаковые названия. В большинстве случаев сопоставляются первичный ключ одной таблицы, содержащий для каждой из строк уникальный идентификатор, и внешний ключ другой таблицы. Например, с каждым из изданий, находящихся в продаже, можно связать объемы его продаж путем создания столбца «ИД_издания» в таблице «Книги» (первичный ключ) и столбца «ИД_издания» в таблице «Продажи» (внешний ключ).
Существует три вида связей между таблицами. Вид создаваемой связи зависит от того, как заданы связанные столбцы.
Связи «один ко многим»
Связь «один ко многим» — наиболее распространенный вид связи. При такой связи каждой строке таблицы А может соответствовать множество строк таблицы Б, однако каждой строке таблицы Б может соответствовать только одна строка таблицы А. Например, между таблицами «Издатели» и «Книги» установлена связь «один ко многим»: каждый из издателей может опубликовать множество книг, однако каждая книга публикуется лишь одним издателем.
Связь «один ко многим» создается в том случае, когда только на один из связываемых столбцов наложено ограничение уникальности или он является первичным ключом.
В Microsoft Access сторона связи «один ко многим», которой соответствует первичный ключ, обозначается символом ключа. Сторона связи, которой соответствует внешний ключ, обозначается символом бесконечности.
Связи «многие ко многим»
При установлении связи «многие ко многим» каждой строке таблицы А может соответствовать множество строк таблицы Б и наоборот. Такая связь создается при помощи третьей таблицы, называемой соединительной, первичный ключ которой состоит из внешних ключей, связанных с таблицами А и Б. Например, между таблицами «Авторы» и «Книги» установлена связь вида «многие ко многим», задаваемая с помощью связей вида «один ко многим» между каждой из этих таблиц и таблицей «АвторыКниг». Первичный ключ таблицы «АвторыКниг» — это сочетание столбцов «ИД_автора» (первичного ключа таблицы авторов) и «ИД_книги» (первичного ключа таблицы заголовков).
Связи «один к одному»
При установлении связи «один к одному» каждой строке таблицы А может соответствовать только одна строка таблицы Б и наоборот. Связь «один к одному» создается в том случае, когда оба связанные столбца являются первичными ключами или на них наложены ограничения уникальности.
Этот вид связи используется редко, поскольку в такой ситуации связываемые данные обычно можно хранить в одной таблице. Использовать связь вида «один к одному» можно в указанных ниже случаях.
• Чтобы разделить таблицу, содержащую слишком много столбцов.
• Чтобы изолировать часть таблицы по соображениям безопасности.
• Для хранения данных кратковременного использования, удалить которые проще всего путем очистки таблицы.
• Для хранения данных, имеющих отношение только к подмножеству основной таблицы.
В Microsoft Access сторона связи «один к одному», которой соответствует первичный ключ, обозначается символом ключа. Сторона связи, которой соответствует внешний ключ, также обозначается символом ключа.
Вопрос № 53 Средства MS Access для установления связей между таблицами. Целостность данных и её обеспечение.
Средствами создания связей служит Схема данных, в которой и происходит установление связей между таблицами.
Целостность данных — это система правил Microsoft Access, которая используется для проверки допустимости отношений между записями связанных таблиц и для того, чтобы не позволить случайно удалить или изменить связанные данные. Настроить проверку целостности данных можно при соблюдении всех указанных ниже условий.
Связываемое поле из главной таблицы является первичным ключом или имеет однозначный индекс.
Связываемые поля должны иметь одинаковый тип данных. Существует два исключения. Поле типа «Счетчик» может быть связано с числовым полем, если для свойства FieldSize у него установлено значение «Длинное целое»; кроме того, можно связать поле «Счетчик» с числовым полем, если у них обоих для свойства FieldSize задано значение «Код репликации».
Обе таблицы принадлежат к одной и той же базе данных Microsoft Access. Если таблицы связаны, то они должны иметь формат Microsoft Access, а для настройки целостности данных необходимо открыть ту базу данных, в которой они хранятся. Обеспечить целостность данных для таблиц, находящихся в базах данных другого формата, невозможно.
При обеспечении целостности данных используются указанные ниже правила.
Невозможно присвоить полю внешнего ключа связанной таблицы значение, отсутствующее в списке значений первичного ключа главной таблицы. При этом можно задать для внешнего ключа пустое значение (Null), указав, что записи не связаны. Например, нельзя создать заказ для несуществующего клиента, но можно создать заказ, не присвоенный ни одному из клиентов, задав для поля «Клиент» пустое значение.
Невозможно удалить запись из главной таблицы, если в связанной таблице есть соответствующие ей записи. Например, нельзя удалить запись сотрудника из таблицы «Сотрудники», если ему назначены заказы в таблице «Заказы».
Невозможно изменить значение первичного ключа в главной таблице, если с данной записью связаны другие записи. Например, нельзя изменить ИД сотрудника в таблице «Сотрудники», если ему назначены заказы в таблице «Заказы».
Вопрос № 54 Формы: назначение, средства создания, использование Ms Access.
1. Форма, ее назначение и структура. Создание формы с помощью мастера
Смысл формы — пользователь получает возможность заполнять только некоторые из полей. Это снижает количество ошибок, упрощает работу.
Создавая форму, в нее включаются так называемые элементы управления. К ним относятся, в частности, надписи, текстовые поля, бланки, флажки, кнопки переключателей, графические объекты. При желании можно создать форму для каждой таблицы БД, а также разработать формы, которые позволяют добавлять данные сразу в несколько таблиц.
Самым простым из способов создания форм является использование средств автоматического создания форм на основе таблицы или запроса. Создаваемые формы (автоформы) бывают нескольких видов, каждый из которых отличается способом отображения данных.
Так же форму можно создавать через Конструктор (Мастер форм)
Многостраничные формы — используется в том случае, когда вам нужно вывести на экран записи, каждая из которых содержит большой объем информации.
Ленточные формы — в такой форме отформатированные записи выводятся на экран одна за другой, как в таблице.
Подчиненные формы — используется для вывода записей из связной таблицы.
Всплывающие формы — формы, выводимые во всплывающих окнах.
Модальные формы — при разработке приложения вы столкнетесь с ситуациями, когда приложению потребуется получить некоторые данные от пользователя ли передать ему важную информацию прежде, чем продолжить работу. Этот тип формы требует от пользователя ответа как непременного условия дальнейшей работы приложения.
Структура формы.
Форма имеет три основных раздела:область заголовка; область данных; область примечания. Линии, разделяющие разделы, перетаскиваются по вертикали с помощью мыши — это позволяет изменять размеры разделов так, как требуется.
Вопрос № 55 Сортировка записей на экране: использование фильтра MS Access.
Существует четыре способа, которые можно использовать для отбора записей в режиме таблицы или формы: фильтр по выделенному, фильтр по форме, фильтрации Ввода и Расширенный фильтр.
Фильтр по выделению
Запустите Microsoft Access, а затем откройте базу данных, которые При работе с.
В поле формы, подчиненной формы, таблицы или подтаблица, выберите один экземпляр значение, которое требуется отфильтровать по ( Например, имя или номер).
На Записей Выберите пункт Фильтр, а затем нажмите кнопку Фильтр по выделению.
Повторите шаги 2 и 3, пока не будет иметь набор записей Вы ищете.ПРИМЕЧАНИЕ: Можно также фильтровать записи, которые не имеют определенное значение. После выбора значения, щелкните правой кнопкой мыши и выберите команду Фильтр с исключением выделенного.
Фильтр по форме
Откройте форму в режиме формы или таблицы, запроса или формы в Представление таблицы данных. Фильтрация записей в подтаблице отображения подтаблицы щелкнув его индикатор развертывания.
На Записей Выберите пункт Фильтр, а затем нажмите кнопку Фильтр по форме Чтобы перейти в окно обычного фильтра.
Можно задать условия для формы, подчиненной формы основную таблицу или любой подчиненной таблицы, отображается. Каждую подчиненную форму или подтаблицы имеет свои собственные Искать и Или вкладки.
Выберите поле для указания критерии.
Введите условие отбора, выбрав значение, которое вы Поиск в списке значений поля (если список содержит значения полей), или введите значение в поле.
Чтобы указать дополнительные значения, содержащие записи в фильтр, нажмите кнопку Или вкладки формы, подчиненной формы, таблицы или подтаблицы что фильтрации, а затем введите дополнительные условия.
На Фильтр меню, нажмите кнопку Применение фильтра Чтобы просмотреть результаты фильтрации.
93.79.221.197 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.
Отключите adBlock!
и обновите страницу (F5)
очень нужно
Определение ключевых полей
Выше неоднократно упоминалось понятие ключевого поля. Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Microsoft Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов.
В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ. Рассмотрим каждый из этих типов.
Для создания ключевого поля типа Счетчик необходимо в режиме Конструктора таблиц:
Если до сохранения созданной таблицы ключевые поля не были определены, то при сохранении будет выдано сообщение о создании ключевого поля. При нажатии кнопки Да (Yes) будет создано ключевое поле счетчика с именем Код (ID) и типом данных Счетчик (AutoNumber).
Для создания простого ключа достаточно иметь поле, которое содержит уникальные значения (например, коды или номера). Если выбранное поле содержит повторяющиеся или пустые значения, его нельзя определить как ключевое. Для определения записей, содержащих повторяющиеся данные, можно выполнить запрос на поиск повторяющихся записей. Если устранить повторы путем изменения значений невозможно, следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.
Составной ключ необходим в случае, если невозможно гарантировать уникальность записи с помощью одного поля. Он представляет собой комбинацию нескольких полей. Для определения составного ключа необходимо:
Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в окне Конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала нужно определить ключ, а затем нажать кнопку Индексы (Indexes) на панели инструментов Конструктор таблиц (Table Design). Затем в появившемся окне Индексы (Indexes) нужно указать другой порядок полей для индекса с именем Ключевое поле (Primary Key).
Рассмотрим в качестве примера применения составного ключа таблицу «Заказано» (OrderDetails) базы данных (Northwind) (рис. 2.23).
В данном случае в качестве составного ключа используются поля «Код заказа» (OrderlD) и «КодТовара» (ProductID), т. к. ни одно из этих полей в отдельности не гарантирует уникальность записи. При этом в таблице выводится не код товара, а наименование товара, т. к. поле «КодТовара» (ProductID) данной таблицы содержит подстановку из таблицы «Товары» (Products), а значения полей «КодТовара» (ProductID) этих таблиц связаны отношением «один-ко-многим» (одной записи таблицы «Товары» (Products) может соответствовать несколько записей таблицы «Заказано» (OrderDetails)). Оба поля могут содержать повторяющиеся значения. Так, один заказ может включать в себя несколько товаров, а в разные заказы могут включаться одинаковые товары. В то же время сочетание полей «КодЗаказа» (OrderlD) и «КодТовара» (ProductID) однозначно определяет каждую запись таблицы «Заказы» (OrderDetails).
Чтобы изменить ключ, необходимо:
Чтобы удалить ключ, необходимо:
ИНФОФИЗ
Как сказал.
Вопросы к экзамену
Для всех групп технического профиля
Список лекций по физике за 1,2 семестр
Учу детей тому, как надо учиться
Часто сталкиваюсь с тем, что дети не верят в то, что могут учиться и научиться, считают, что учиться очень трудно.
Урок 33. Практическая работа № 21. Организация баз данных. Заполнение полей баз данных.
Практическая работа № 21
Тема: Организация баз данных. Заполнение полей баз данных.
Цель работы: изучение приемов установки связей между таблицами базы данных.
Оборудование: ПК, Windows XP Professional, MS Access 2007.
1 В соответствие с заданием создать и заполнить таблицы БД «Фирма», установить связи между ними.
2 Продемонстрировать на компьютере заполненные таблицы, схему данных.
3 Ответить на контрольные вопросы.
4 Сделать вывод о проделанной работе.
Порядок выполнения:
1. Запустите Microsoft Access.
Для этого запустите Access, создайте новую базу данных, задайте имя базы данных Фирма, выберите место сохранения Вашей базы данных (диск Х:) и нажмите кнопку Создать. (подробный порядок действий описан в лабораторной работе № 23)
Таблица Сотрудники
Таблица Клиенты
Таблица Заказы
4. Установите ключевые поля.
Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля.
Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является Счетчик, так как значения в данном поле являются уникальными (т. е. исключают повторы).
При создании таблиц в режиме конструктора ключевое поле устанавливается автоматически. Откройте созданные Вами таблицы в режиме Конструктор и проверьте установленные ключевые поля:
1) в таблице Сотрудники ключевое поле Код сотрудника
2) в таблице Клиенты ключевое поле Код клиента
3) в таблице Заказы ключевое поле Код заказа
5. Создайте раскрывающиеся списки с помощью Мастера подстановок.
Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Откройте таблицу Заказы в режиме Конструктора. Для поля Код клиента выберите тип данных Мастер подстановок.
В появившемся окне выберите команду Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее.
В списке таблиц выберите таблицу Клиенты и щелкните на кнопке Далее.
В списке Доступные поля выберите поле Код клиента и щелкните на кнопке со стрелкой >>, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поле Название компании и щелкните на кнопке Далее.
Выберите порядок сортировки списка по полю Название компании и нажмите кнопку Далее.
В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка, установите флажок Скрыть ключевой столбец и нажмите кнопку Далее.
На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово.
Сохраните полученный результат.
6. Аналогичным образом создайте раскрывающийся список для поля Код сотрудника.
Теперь в списке таблиц выберите таблицу Сотрудники
В списке Доступные поля выберите поля Код сотрудника, Фамилия, Имя.
Порядок сортировки списка выберите по полю Фамилия.
Все остальные действия проводятся аналогично пункту 6.
7. Создайте связей между таблицами.
Существует несколько типов отношений между таблицами:
— при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности;
— при отношении «один-к-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице;
— при отношении «многие-к-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой.
Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя.
Выполните команду вкладки Лента Работа с базами данных кнопка Схема данных
Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выбираются нужные таблицы. Для добавления в схему данных новой таблицы необходимо щелкнуть правой кнопкой мыши на схеме данных и в контекстном меню выбрать пункт Добавить таблицу.
Если связи между таблицами уже были заданы, то откроется окно Схема данных, на котором будут отображены таблицы и связи между ними.
Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице.Параметры связи можно изменить, нажав на кнопку Объединение. После установления всех необходимых параметров нажмите кнопку ОК.
Аналогично измените связь между таблицами Клиенты и Заказы.
В результате должна получиться схема данных, представленная на рисунке.
На схеме данных связи отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-к-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и «∞» вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса).
7. В таблицу Сотрудники внесите данные о 7 работниках.
8. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма.
9. В таблице Заказы оформите 5 заявок, поступивших на фирму.
10. Покажите работу преподавателю.
11. Ответьте на контрольные вопросы.
Контрольные вопросы:
1 С помощью чего можно создавать таблицы?
2 Что такое ключевое поле?
3 Как установить несколько ключевых полей?
4 Как установить связи между таблицами?
5 Какие существуют отношения между таблицами?
6 Что означают на схеме данных «1» и «∞»?
7 Зачем нужен Мастер подстановок?
8 Для чего нужен механизм запросов?
Методические указания к лабораторной работе № 24 Создание связей в базе данных
Источники информации:
- http://infofiz.ru/index.php/mirtehn/infstud/1kurs/288-lr24inf
- http://word-office.ru/kak-sdelat-neskol-ko-klyuchevyh-poley-v-access.html
- http://www.litmir.me/br/?b=638921&p=4
- http://word-office.ru/kak-sdelat-dva-klyuchevyh-polya-v-access.html
- http://support.microsoft.com/ru-ru/office/%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BF%D0%B5%D1%80%D0%B2%D0%B8%D1%87%D0%BD%D0%BE%D0%B3%D0%BE-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D1%8B-%D0%B2-access-07b4a84b-0063-4d56-8b00-65f2975e4379
- http://t-tservice.ru/access/kak-sdelat-dva-klyuchevyh-polya-v-access.html
- http://t-tservice.ru/access/kak-sdelat-neskolko-klyuchevyh-polej-v-access.html
- http://www.taurion.ru/access/2/13
- http://infofiz.ru/index.php/mps/nps/item/288-fonograf