Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Создание и изменение ключевых полей




  • Откройте таблицу в режиме конструктора.
  • Выделите одно или несколько полей, которые необходимо определить как ключевые. Для выделения одного поля выберите область выделения строки нужного поля. Для выделения нескольких полей нажмите и удерживайте клавишу CTRL и выберите область выделения для каждого поля.
  • Нажмите кнопку Ключевое поле на панели инструментов.

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

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

Определение в базе данных связей между таблицами.

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

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

Рассмотрим типы связей более подробно на примере базы данных "Отдел кадров", в состав которой входят четыре таблицы:

  • Список отделов - перечень всех отделов предприятия;
  • Список сотрудников - индивидуальные данные сотрудников, работающих на этом предприятии;
  • Назначения - распределение сотрудников по отделам, причем каждый сотрудник может работать в нескольких отделах (внутреннее совместительство);
  • Медицинский осмотр - результаты медицинского осмотра сотрудников.
Отношение не определено, если поле КодСотрудника ни в одной из таблиц не является ключевым и не имеет уникального индекса. В запросах, содержащих таблицы с неопределенным отношением, Microsoft Access по умолчанию создает линию объединения между таблицами, но условия целостности данных при этом не накладываются и нет гарантии уникальности записей в любой из таблиц.

 

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

 

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

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

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





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...