Как сделать несколько ключевых полей в access?

Ключевое поле таблицы MS Access, его назначение, способы задания

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

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

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

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

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

Виды индексированных полей в MS Access, примеры

Свойство «Индексированное поле» (Indexed) определяет индекс, создаваемый по одному полю. Индекс ускоряет выполнение запросов, в которых используются индексированные поля, и операции сортировки и группировки. Например, если часто выполняется поиск по полю «Фамилия» в таблице «Сотрудники», следует создать индекс для этого поля.

Значение данного свойства можно задать только в окне свойств в режиме конструктора таблицы. Индекс по одному полю может быть определен путем установки свойства Индексированное поле (Indexed). Кроме того, можно выбрать команду Индексы в меню Вид или нажать кнопку «Индексы» на панели инструментов. Будет открыто окно индексов.

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

Рассмотрим некоторые из этих дополнительных свойств:

Свойство «Тип элемента управления»(DisplayControl) содержит раскрывающийся список типов элементов управления, доступных для выбранного поля. Для полей с типами «Текстовый» или «Числовой» для данного свойства возможен выбор поля, списка или поля со списком. Для логических полей возможен выбор поля, поля со списком или флажка.

Свойства «Тип источника строк» (RowSourceType), «Источник строк» (RowSource) определят источник данных для списка или поля со списком. Например, для того чтобы вывести в строках списка данные из запроса «Список клиентов», следует выбрать для свойства Тип источника строк значение «Таблица/запрос» и указать в свойстве Источник строк имя запроса «Список клиентов». Если список должен содержать небольшое число значений, которые не должны изменяться, можно выбрать в свойстве Тип источника строк (RowSourceType) «Список значений» и ввести образующие список значения в ячейку свойства Источник строк (RowSource). Элементы списка отделяются друг от друга точкой с запятой.

Дата добавления: 2018-02-28 ; просмотров: 830 ; ЗАКАЗАТЬ РАБОТУ

Когда какой тип данных использовать?

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

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

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

Основные типы

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

Числовой, Большое число

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

Значения «Да» и «Нет», а также поля, содержащие только одно из двух значений.

Значения даты и времени с 100 по 9999 годы.

Текст или сочетание текста и чисел, которые отформатированы с помощью элементов управления цветом и шрифтом.

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

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

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

Длинные блоки текста. Типичный пример использования поля MEMO — подробное описание продукта. Помните, что начиная с версии Access 2013, тип данных MEMO переименован в «Длинный текст».

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

У полей подстановки есть дополнительный набор свойств, которые находятся на вкладке Подстановка в области Свойства поля.

Примечание: В файлах формата MDB недоступны вложения и вычисляемые данные.

Числовой

Числа без дополнительного форматирования (точно в том виде, в котором хранятся).

Обычные денежные значения.

Обычные денежные значения в формате ЕС.

Числовые данные с десятичными знаками.

Значения в процентах.

Дата и время

Краткий формат даты

Дата в кратком формате. Зависит от региональных параметров даты и времени. Например, 14.03.2001 для России.

Средний формат даты

Дата в среднем формате. Например, 03-апр-09 для России.

Длинный формат даты

Дата в длинном формате. Зависит от региональных параметров даты и времени. Например, 14 марта 2001 г. для России.

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

Средний формат времени

Время в 12-часовом формате, после которого указываются символы AM (до полудня) или PM (после полудня).

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

Простейшая база данных

База данных (БД) — это систематизированное хранилище информации, которая может относиться к различным сферам человеческой деятельности.

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

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

Создайте базу данных, содержащую сведения об учащихся колледжа.

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

        Для формирования структуры таблицы выполнить: Таблицы → Создать и выбрать режим Конструктор. Создание таблицы, то есть определение входящих в неё полей, производится путём заполнения специальной таблицы (рис. 1)

Поле

Тип данных

Описание

………………………………………………………………………………….

Рис. 1

Что такое ВПР и как ею пользоваться?

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

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

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

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

Теперь активируйте первую ячейку в блоке «Цена» и вызовите «Мастер функций». Сделать это можно, нажав на кнопку «fx», расположенную перед строкой формул, или зажав комбинацию клавиш «Shift+F3». В открывшемся диалоговом окне отыщите категорию «Ссылки и массивы». Здесь нас не интересует ничего кроме функции ВПР. Выберите её и нажмите «ОК». Кстати, следует сказать, что функция VLOOKUP может быть вызвана через вкладку «Формулы», в выпадающем списке которой также находится категория «Ссылки и массивы».

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

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

Укажите Excel, какие именно значения необходимо сопоставить функции VLOOKUP.
Для того чтобы Excel не путался и ссылался на нужные вам данные, важно зафиксировать заданную ему ссылку. Чтобы сделать это, выделите в поле «Таблица» требуемые значения и нажмите клавишу F4

Если всё выполнено верно, на экране должен появиться знак $.

Теперь мы переходим к полю аргумента «Номер страницы» и задаём ему значения «2». В этом блоке находятся все данные, которые требуется отправить в нашу рабочую таблицу, а потому важно присвоить «Интервальному просмотру» ложное значение (устанавливаем позицию «ЛОЖЬ»). Это необходимо для того, чтобы функция ВПР работала только с точными значениями и не округляла их.

Теперь, когда все необходимые действия выполнены, нам остаётся лишь подтвердить их нажатием кнопки «ОК». Как только в первой ячейке изменятся данные, нам нужно будет применить функцию ВПР ко всему Excel документу. Для этого достаточно размножить VLOOKUP по всему столбцу «Цена». Сделать это можно при помощи перетягивания правого нижнего уголка ячейки с изменённым значением до самого низа столбца. Если все получилось, и данные изменились так, как нам было необходимо, мы можем приступить к расчёту общей стоимости наших товаров. Для выполнения этого действия нам необходимо найти произведение двух столбцов — «Количества» и «Цены». Поскольку в Excel заложены все математические формулы, расчёт можно предоставить «Строке формул», воспользовавшись уже знакомым нам значком «fx».

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

Если для какой-то из таблиц не было определено ключевое поле, то в поле Тип отношения отображается текст «Не определено».

  1. Откройте окно Схема данных, нажав кнопку на панели инструментов
  2. В диалоговом окне Добавление таблицы выберите вкладку Таблицы и, нажимая кнопку Добавить, разместите в окне Схема данных все ранее созданные таблицы базы данных, список которых будет отображен в диалоговом окне. Можно добавить все таблицы сразу, выделив 1-ую таблицу и нажав Shift — последнюю таблицу.
  3. Нажмите кнопку Закрыть. В результате в окне Схема данных будут представлены все таблицы базы данных КОЛЛЕДЖ со списками своих полей.
  4. Установите связь между таблицами ГРУППА и СТУДЕНТ по простому ключу Номер Группы или Код группы (смотри в своей БД). Для этого в окне Схема данных установите курсор мыши на ключевое поле НГ главной таблицы ГРУППА и перетащите это поле на поле Номер Группы в подчиненной таблице СТУДЕНТ  Для удаления ошибочной связи в окне Схема данных выделите ненужную связь и нажмите Del.
  5. В открывшемся окне Изменение связей в строке Тип отношения установится один-ко-многим. Отметьте доступный для этого типа отношений параметр Обеспечение целостности данных.
  6. Установите флажки каскадное обновление и удаление связанных полей, тогда будет обеспечена автоматическая корректировка данных для сохранения целостности во взаимосвязанных таблицах. Нажмите Создать. Чтобы линии связи не пересекались и были удобны для восприятия, расположите таблицы в окне Схемы данных в соответствии с их относительной подчиненностью.
  7. Установите связи по простому ключу для других пар таблиц:

ПРЕДМЕТПРЕПОДАВАТЕЛЬ 

ПРЕДМЕТ-ЗАНЯТИЯ 

ПРЕПОДАВАТЕЛЬГРУППА

ГРУППАЭКЗАМЕН 

Что представляет собой БД?

Как известно, база данных представляет собой инструмент сбора и структурирования информации. В БД можно хранить данные о людях, заказах, товарах и т. п. Многие БД изначально выглядят как небольшой список в текстовом редакторе либо электронной таблице. Но в связи с увеличением объёма данных, список наполняется лишней информацией, появляются несоответствия, не всё становится понятным… Кроме того, способы поиска и отображения подмножеств данных при использовании обычной электронной таблицы крайне ограничены. Таким образом, лучше заранее подумать о переносе информации в базу данных, созданную в рамках системы управления БД, например, в такую, как Access.

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

Что касается БД Access, то в ней все таблицы сохраняются в одном файле совместно с другими объектами (формами, отчётами, модулями, макросами).

Для файлов БД, созданных в формате Access 2007 (он совместим с Access 2010, Access 2013 и Access 2016), применяется расширение ACCDB, а для БД, которые созданы в более ранних версиях, — MDB. При этом посредством Access 2007, Access 2013, Access 2010 и Access 2016 вы сможете, при необходимости, создавать файлы и в форматах более ранних версий (Access 2000, Access 2002–2003).

Применение БД Access позволяет:
• добавлять новые данные в БД (допустим, новый артикул складских запасов);
• менять информацию, находящуюся в базе (перемещать артикул);
• удалять данные (например, когда артикул продан либо утилизирован);
• упорядочивать и просматривать данные разными методами;
• обмениваться информацией с другими людьми посредством отчётов, сообщений, эл. почты, глобальной или внутренней сети.

Ключевое поле

Ключевое поле

Это та запись, которая определяет запись в таблице.

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

Сделаем это поле ключевым (на панели задач – ключевое поле) и закроем таблицу.

Это первичный ключ. Для ключевых полей используют тип – счетчик или числовой.

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

Книги – код книги.

Издательство – код издательства (тип данных –мастер подстановок – Издательство- выберите поле код и наименование).

Выдача – код выдачи (код читателя – таблица Читатель /код читателя и фамилия/ и код книги – таблица Книги/ код книги и название).

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

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

Переходим на вкладку – Работа с базами данных – схема данных – появилось окно.

Поочередно нажимаем на название каждой таблицы и закрываем окно.

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

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

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

Аналогично свяжем две другие таблицы.

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

Сохраняем, закрываем.

Теперь Код читателя таблицы Читатель переносим на Код читателя таблицы Выдача.

Ставим везде галочки — создать. Появилась связь (читатель берет много книг).

Теперь свяжем таблица Книги и Выдача. Для этого в таблицу Выдача добавим Код книги. И проделаем те же манипуляции.

Заполнение таблиц

Берем таблицу Читатель. Код читателя ставим на первое место. Нумерация будет автоматическая в этом поле. Вводим остальные данные (не менее 10) и сохраняем правой кнопкой.

Заполняем остальные таблицы по аналогии.

Заполнение таблицы

 Введём в специальную таблицу только следующие данные

Поле

Тип данных

Описание

Счетчик

Фамилия

Текстовый

Имя

Текстовый

Дата

Дата / время

Дата рождения

Пол (м)

Логический

Пол мужской  ?

Улица

Текстовый

Дом

Числовой

Квартира

Числовой

Учебная группа

Текстовый

Группа здоровья

Текстовый

Группа здоровья по физкультуре

Увлечения

Текстовый

Глаза

Текстовый

Цвет глаз

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

     Например, вводя в четвёртой строке таблицы имя поля Дата, установим тип данных Дата/время.  В раскрывающемся списке Свойства поля установить курсор в наборном поле Формат поля. Во вновь раскрывающемся списке Формат поля установить Краткий формат даты.

    Напоминание. Переход от ячейки к ячейке осуществляется одним из следующих способов: мышью; нажатием на клавишу Enter; клавишей Tab.

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

     В  появившемся  окне  введите  имя  таблицы «Список_учеников» и  щелкните  на  кнопке ОК. Появится запрос на создание ключевого поля – уникального  поля записи. По ключевому  полю  можно  однозначно идентифицировать запись– его значение не повторяется  у  разных  записей. Ключевым сделаем атрибут таблицы №. Для этого установим курсор на имя этого поля и щёлкнем по кнопке  − Ключевое поле. Это поле позднее будем использовать для  связи  записей из разных таблиц. При заполнении данной таблицы данными значения счётчика №  будут формироваться  самостоятельно (в поле №  для каждой записи будут появляться числа – номера записей).

         Заполните базу данных — не менее 20 произвольных значений.

Точное или приближенное совпадение в функции ВПР

И, наконец, давайте рассмотрим поподробнее последний аргумент, который указывается для функции ВПР – range_lookup (интервальный_просмотр). Как уже упоминалось в начале урока, этот аргумент очень важен. Вы можете получить абсолютно разные результаты в одной и той же формуле при его значении TRUE (ПРАВДА) или FALSE (ЛОЖЬ).

Для начала давайте выясним, что в Microsoft Excel понимается под точным и приближенным совпадением.

  • Если аргумент range_lookup (интервальный_просмотр) равен FALSE (ЛОЖЬ), формула ищет точное совпадение, т.е. точно такое же значение, что задано в аргументе lookup_value (искомое_значение). Если в первом столбце диапазона table_array (таблица) встречается два или более значений, совпадающих с аргументом lookup_value (искомое_значение), то выбрано будет первое из них. Если совпадения не найдены, функция сообщит об ошибке #N/A (#Н/Д).Например, следующая формула сообщит об ошибке #N/A (#Н/Д), если в диапазоне A2:A15 нет значения 4:

  • Если аргумент range_lookup (интервальный_просмотр) равен TRUE (ИСТИНА), формула ищет приблизительное совпадение. Точнее, сначала функция ВПР ищет точное совпадение, а если такое не найдено, выбирает приблизительное. Приблизительное совпадение – это наибольшее значение, не превышающее заданного в аргументе lookup_value (искомое_значение).

Если аргумент range_lookup (интервальный_просмотр) равен TRUE (ИСТИНА) или не указан, то значения в первом столбце диапазона должны быть отсортированы по возрастанию, то есть от меньшего к большему. Иначе функция ВПР может вернуть ошибочный результат.

Чтобы лучше понять важность выбора TRUE (ИСТИНА) или FALSE (ЛОЖЬ), давайте разберём ещё несколько формул с функцией ВПР и посмотрим на результаты

Пример 1: Поиск точного совпадения при помощи ВПР

Как Вы помните, для поиска точного совпадения, четвёртый аргумент функции ВПР должен иметь значение FALSE (ЛОЖЬ).

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

Обратите внимание, что наш диапазон поиска (столбец A) содержит два значения 50 – в ячейках A5 и A6. Формула возвращает значение из ячейки B5

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

Пример 2: Используем ВПР для поиска приблизительного совпадения

Когда Вы используете функцию ВПР для поиска приблизительного совпадения, т.е. когда аргумент range_lookup (интервальный_просмотр) равен TRUE (ИСТИНА) или пропущен, первое, что Вы должны сделать, – выполнить сортировку диапазона по первому столбцу в порядке возрастания.

Это очень важно, поскольку функция ВПР возвращает следующее наибольшее значение после заданного, а затем поиск останавливается. Если Вы пренебрежете правильной сортировкой, дело закончится тем, что Вы получите очень странные результаты или сообщение об ошибке #N/A (#Н/Д)

Вот теперь можно использовать одну из следующих формул:

Как видите, я хочу выяснить, у какого из животных скорость ближе всего к 69 милям в час. И вот какой результат мне вернула функция ВПР:

Как видите, формула возвратила результат Антилопа (Antelope), скорость которой 61 миля в час, хотя в списке есть также Гепард (Cheetah), который бежит со скоростью 70 миль в час, а 70 ближе к 69, чем 61, не так ли? Почему так происходит? Потому что функция ВПР при поиске приблизительного совпадения возвращает наибольшее значение, не превышающее искомое.

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

Группировка в запросах

Давайте запросим из таблицы Справочник.Еда следующие реквизиты: Наименование, Цвет и Калорийность:

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

Алгоритм для жёлтого цвета будет такой:

  1. Находим все строчки у которых в поле Цвет стоит Жёлтый.
  2. Это будут строчки №1, 6, 8 и 9.
  3. Суммируем поле Калорийность для каждой из этих строк: 89 + 31 + 340 + 536
  4. Получаем, что для жёлтого цвета суммарная калорийность равна 996.

И так для каждого цвета.

Описанный выше процесс называется группировкой . Таким образом, группировка – это «схлопывание» (свёртка) строчек таблицы по определенному признаку.

При группировке все поля делятся на две группы:

  • Группировочные – это как раз те поля, по которым идёт свёртка. В нашем случае таким полем является Цвет.
  • Группируемые – это те поля, которые сворачиваются (схлопываются, объединяются). В нашем случае таким полем является Калорийность.

Группируемые поля не могут быть сами по себе. К ним обязательно применяется одна из агрегатных функций: СУММА, СРЕДНЕЕ, МИНИМУМ, МАКСИМУМ, КОЛИЧЕСТВО, КОЛИЧЕСТВО РАЗЛИЧНЫЕ:

Типы данных в связях и соединениях

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

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

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

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

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

Общие сведения о первичных ключах в Access

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

1. Первичный ключ

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

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

При создании таблицы в режиме таблицы Access автоматически создает первичный ключ с именем «Код» и типом данных «Счетчик».

Создание приемлемого первичного ключа

Чтобы правильно выбрать первичный ключ, следует учитывать несколько характеристик.

Ключ должен однозначно определять каждую строку.

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

Ключ крайне редко изменяется (в идеале — никогда).

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

Поле с типом данных «Счетчик» является хорошим первичным ключом.

Примеры неудачных первичных ключей

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

Неподходящий первичный ключ

Может быть не уникальным и может изменяться

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

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

Adblock
detector