Определение первичного ключа

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

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

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

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

Щелкните правой кнопкой мыши вкладку документа и выберите команду Конструктор. -или- щелкните правой кнопкой мыши имя таблицы в области переходов и выберите команду Конструктор -или- нажмите кнопку Конструктор в строке состояния Access.

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

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

Откройте таблицу в режиме конструктора.

Выберите поле или поля, которые требуется использовать в качестве первичного ключа.

Чтобы выделить одно поле, щелкните область выделения строки нужного поля.

Для выделения нескольких полей щелкните область выделения каждого поля, удерживая нажатой клавишу CTRL.

На вкладке Структура в группе Элементы нажмите кнопку Ключевое поле(Рис. 8).

Рис. 8

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

Удаление первичного ключа

Откройте таблицу в режиме конструктора.

Щелкните область выделения строки для текущего первичного ключа.

Если первичный ключ состоит из одного поля, щелкните область выделения для этого поля.

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

На вкладке Структура в группе Элементы нажмите кнопку Ключевое поле (Рис. 8).

Индикатор ключа удаляется из поля или полей, которые ранее были заданы в качестве первичного ключа.

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

Создание связи между таблицами

После создания таблицы для каждого объекта в базе данных нужно предоставить Office Access 2007 средства, с помощью которых эти данные возвращаются, когда это необходимо. Это осуществляется с помощью добавления общих полей в связанные таблицы и определения межтабличных связей. После этого можно создавать запросы, формы и отчеты, отображающие сведения одновременно из нескольких таблиц.

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

Создание связи между таблицами с помощью вкладки «Схема данных»

При открытой базе данных на вкладке Работа с базами данных в группе Отображение выберите пункт Схема данных (Рис. 9).

Рис. 9

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

Рис. 10

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

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

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

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

Для поддержания целостности данных для этой связи установите флажок Обеспечение целостности данных. Нажмите кнопку Создать.

Access проведет линию связи между двумя таблицами. Если был установлен флажок Обеспечение целостности данных, линия будет толще на каждом конце. Кроме того, если был установлен флажок Обеспечение целостности данных, над широкой частью на одном конце линии связи будет отображено число 1, а над широкой частью на другом конце линии — символ бесконечности (∞), как показано на следующем Рис. 11.

Рис. 11

Примечания

Чтобы создать отношение «один-к-одному» Оба общих поля (как правило, поля первичного ключа и внешнего ключа) должны иметь уникальный индекс. Это означает, что свойства Индексированное (Indexed) этих полей должны иметь значения Да (Совпадения не допускаются). Если оба поля имеют уникальный индекс, Access создаст отношение «один-к-одному».

Чтобы создать отношение «один ко многим» Поле на одной стороне отношения (как правило, поле первичного ключа) должно иметь уникальный индекс. Это означает, что свойство Индексировано (Indexed) этого полей должны иметь значения Да (Совпадения не допускаются). Поле на стороне «многие» не должно иметь уникального индекса. У этого поля может быть индекс, но он должен допускать совпадения. Это означает, что свойство Индексировано (Indexed) этого поля должно иметь значение Нет либо Да (Допускаются совпадения). Если одно поле имеет уникальный индекс, а другое — нет, Access создаст отношение «один ко многим».

Для удаления связи между таблицами:

Щелкните линию связи, которую требуется удалить. При выделении линия связи становится толще.

Нажмите клавишу DEL -или- щелкните правой кнопкой мыши и выберите команду Удалить.

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

Изменение связи между таблицами

При открытой базе данныхНа вкладке Работа с базами данных в группе Отображение выберите пункт Связи.

Откроется вкладка «Схема данных».

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

На вкладке Конструктор в группе Связи нажмите кнопку Все связи.

Будет отображены все таблицы со связями вместе с линиями связи. Обратите внимание, что скрытые таблицы (таблицы, у которых установлен флажок скрытый в диалоговом окне Свойства) и их связи не будут отображены, если не выбран параметр «Показывать скрытые объекты» в диалоговом окне Параметры переходов.

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

Дважды щелкните линию связи -или- на вкладке Конструктор в группе Сервис щелкните Изменение связей.

Откроется диалоговое окно Изменение связей (Рис. 12).

Рис. 12

Внесите изменения и нажмите кнопку ОК.

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

 

Пример выполнения: (теория по принципу, как ниже, выбираем из текста выше)

«Объекты базы данных Аccess»

База данных – организованная совокупность взаимодействия данных содержащие сведения о различных сущностях одной предметной областях.

Реализация базы данных – множество взаимосвязанных двумерных таблиц в каждой из которых содержаться об одной сущности.

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

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

Схема данных.

В СУБД Access процесс создания реализацией базы данных включает создание схемы данных. Схема данных наглядно отражает таблицы и связи между ними. А так же обеспечивает исполнение связей при обработке так же обеспечивает исполнение связей при обработке данных. В схеме данных установившиеся параметры обеспечения целостности связи в базе данных.

Объекты Access.

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

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

Модули. Содержат процедуру на языке V.B.A. могут создаваться пользователем функции, который разрабатывается пользователем для реализации нестандартных функций в приложении пользователей процедуру для обработки событий.

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

Отчёты. Предназначены для формирования всех документов. Содержит результаты режимов задач пользователя и вывода.

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

Запрос. Создаются пользователями для выборки данных из 1 или нескольких связанных таблиц. Результатом выполнения запроса является таблица, которая может быть использована на ряду с другими таблицами БД, при обработке данных. Запрос может формироваться в режиме SQL - языка запросов. С помощью запроса можно также обновить, удалить и добавить данные в таблице или создать новые таблицы на основе уже существующих.

 

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

1. Открыть Access.

2. Выбрать «Новая база данных»

3. На вкладке «создание» нажимаем «Таблица»

4. Создаем три таблицы.

5. На вкладке «Работа с базами данных» нажимаем «схема данных»

6. Появляется окно, через него мы добавляем таблицы.

7. Соединяем линиями от кода к коду.

 

Выполнение:

 

 

Создание новой таблицы в новой базе данных.

1) Запустить приложение Access и на странице, приступая к работе с Microsoft Access, в группе «Новая пустая база данных» выбрать пункт «Новая база данных».

Рисунок 1 Создание базы данных

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

Access создает новую базу данных и открывает таблицу с именем

«Таблица 1» в режиме таблицы, вот так:

Рисунок 2 Создание новой таблицы

Рисунок 3 Открытие новой таблицы

3) Заполняем таблицу в соответствии с требованиями, указывая тип переменных, ключевое поле:

 

Рисунок 4 Заполнение таблицы в режиме конструктор

4) В результате заполнения таблица получается следующего вида:

 

 

Рисунок 5 Таблица

В диалоговом окне выбираем и открываем базу данных. На вкладке работа с базами данных в группе «Отображение» выбираем пункт «Схема данных».

 

Рисунок 6 Пункт Схема данных

 

Рисунок 7 Кнопка добавить таблицу

 

 

Рисунок 8 Добавление таблицы



>2