Додавання або змінення первинного ключа таблиці в Access

Додавання або змінення первинного ключа таблиці в Access

Первинний ключ – це поле або набір полів зі значеннями, унікальними в межах певної таблиці. За допомогою значень ключа можна посилатися на окремі записи, адже значення ключа кожного запису відрізняється. Кожна таблиця може мати лише один первинний ключ. Access може автоматично створити поле первинного ключа одночасно з таблицею, або ви можете вказати поля, які мають слугувати первинним ключем. Дізнайтеся, як і для чого використовують первинні ключі, з цієї сатті.

Щоб задати первинний ключ таблиці, відкрийте таблицю в режимі конструктора. Виберіть поле (або поля), які ви бажаєте використовувати, а потім на стрічці виберіть Первинний ключ.

Примітка.: Ця стаття стосується лише настільних баз даних Access. Access автоматично визначає первинні ключі для нових таблиць у веб-програмах і веб-базах даних Access. Хоча ці автоматично створені первинні ключі можна перевизначити, не радимо цього робити.

У цій статті

Загальні відомості про первинні ключі в Access

Установлення первинного ключа за допомогою наявних в Access полів

Вилучення первинного ключа

Змінення первинного ключа в Access

Додаткові відомості

Загальні відомості про первинні ключі в Access

За допомогою первинних ключів Access швидко пов’язує дані з кількох таблиць і логічно поєднує їх. За допомогою полів первинних ключів в інших таблицях можна звертатися до таблиці-джерела первинного ключа. В інших таблицях ці поля мають назву зовнішніх ключів. Наприклад, поле "Ідентифікатор клієнта" в таблиці "Клієнти" може також відображатися в таблиці "Замовлення". У таблиці "Клієнти" це первинний ключ. У таблиці "Замовлення" це поле має назву "зовнішній ключ". Тобто зовнішній ключ – це первинний ключ іншої таблиці. Докладні відомості див. в статті Основи розробки баз даних.

Первинний і зовнішній ключі з двох таблиць даних Access

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

2. Зовнішній ключ

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

У програмі Access автоматично створюється індекс первинного ключа, який допомагає прискорити виконання запитів та інших операцій. Також у програмі Access кожен запис має в полі первинного ключа значення, яке є унікальним.

Коли ви створюєте нову таблицю у вікні табличного подання даних, Access автоматично створює первинний ключ і призначає його полю ім’я "Ідентифікатор" і тип даних "Лічильник".

Що таке правильний первинний ключ?

Поле, найбільш відповідне для первинного ключа, має кілька характеристик.

  • Воно однозначно ідентифікує кожний рядок

  • Воно ніколи не буває пусте або нульове – завжди містить значення.

  • Значення поля рідко (або ніколи) не змінюється

Якщо не вдається визначити правильний ключ, створіть поле "Лічильник", яке слугуватиме ключем. Значення поля "Лічильник" створюється автоматично під час першого збереження кожного запису. Тому в цього поля є всі три характеристики, які притаманні правильному первинному ключу. Докладні відомості про додавання поля "Лічильник" див. в статті Додавання поля "Лічильник" як первинного ключа.

Первинний ключ "Лічильник", позначений як "Ідентифікатор" у таблиці Access у режимі конструктора

Поле «Автонумерація» – це правильний первинний ключ.

Приклади неправильних первинних ключів

Будь-яке поле, якому бракує однієї або кількох характеристик правильного первинного ключа, – поганий вибір для первинного ключа. Ось кілька прикладів, які небажано використовувати як первинні ключі для таблиці ­«Контакти» з поясненням причин.

Неправильний первинний ключ

Причина

Особисте ім’я

Може бути недостатньо унікальним і може змінюватися.

Телефон

Може змінюватися.

Адреса електронної пошти

Може змінюватися.

Поштовий індекс

Кілька осіб можуть мати один і той самий індекс.

Поєднання фактів і чисел

Факти можуть змінюватися, що робить обслуговування обтяжливим. Це може призвести до непорозуміння, якщо факти дублюються в іншому полі. Наприклад, комбінація з назви міста та збільшуваного числа (наприклад, NEWYORK0579) може бути невдалим вибором, якщо назва міста також зберігається як поле.

Номери соціального страхування

  • Це приватні відомості, які заборонено використовувати в урядових установах і деяких організаціях.

  • У деяких людей немає номера соціального страхування

  • В однієї особи їх може бути кілька протягом життя

Складний ключ: використання комбінації кількох полів як первинного ключа

Іноді як первинний ключ таблиці можна встановити два або більше полів. Наприклад, у таблиці "Відомості про замовлення", де зберігаються записи про замовлення, первинним ключем можуть слугувати два поля: "Ідентифікатор замовлення" й "Ідентифікатор товару". Якщо первинний ключ містить більше одного поля, він має назву складеного ключа.

Установлення первинного ключа за допомогою наявних в Access полів

Якщо є таблиця, у якій кожний запис має унікальний номер ідентифікатора (наприклад, ідентифікатор, серійний номер або код), таке поле можна використати як первинний ключ. Найкращий первинний ключ – це поле, яке унікально ідентифікує кожен рядок, не містить пустих значень і рідко (або ніколи) змінюється.

  1. Відкрийте базу даних, яку потрібно змінити.

  2. В області переходів клацніть правою кнопкою таблицю, у якій потрібно встановити первинний ключ, і в контекстному меню виберіть пункт Конструктор.

    Порада.: Якщо область переходів не відображається, натисніть клавішу F11, щоб відкрити її.

  3. Виберіть поле або поля, які потрібно використати як первинний ключ.

    Для вибору одного поля натисніть маркер виділення рядка для потрібного поля.

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

  4. На вкладці Конструктор у групі Знаряддя виберіть елемент Первинний ключ.

    Група "Знаряддя" на вкладці "Конструктор"

    Піктограма ключа додається ліворуч від поля або полів, вибраних як первинний ключ.

Вилучення первинного ключа в Access

У разі видалення первинного ключа поле або поля, які до цього були первинним ключем, більше не є основним засобом ідентифікації запису. Проте видалення первинного ключа не видаляє поля або полів з таблиці. Але з полів видаляється значення первинного ключа.

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

  1. Перш ніж Вилучення первинний ключ, переконайтеся, що його не задіяно у зв’язках між таблицями. Якщо спробувати Вилучення такий первинний ключ (частину одного або кількох зв’язків), в Access відобразиться повідомлення про те, що спочатку необхідно видалити зв’язок.

    Щоб видалити зв’язок між таблицями, виконайте такі дії:   

    1. Якщо відкрито таблиці, які є частинами зв’язку, закрийте їх. Не можна видаляти зв’язок між відкритими таблицями.

    2. На вкладці Знаряддя бази даних у групі Зв’язки натисніть кнопку Зв’язки.

      Зображення стрічки Access

    3. Якщо таблиці, які є частинами зв’язку, не відображаються, на вкладці Конструктор у групі Зв’язок натисніть кнопку Відобразити таблицю.

    4. Виберіть потрібні таблиці в діалоговому вікні Відображення таблиці, а потім натисніть кнопки Додати й Закрити.

      Група "Зв’язок" на вкладці "Конструктор"

    5. Виберіть зв’язок між таблицями, який слід видалити (лінія стає жирною, якщо її вибрано у разі вибору), і натисніть клавішу Delete.

    6. На вкладці Конструктор у групі Зв’язок натисніть кнопку Закрити.

  2. Після видалення зв’язків в області переходів клацніть правою кнопкою таблицю, у якій потрібно видалити первинний ключ, а потім виберіть пункт Режим конструктора.

    Порада.: Якщо область переходів не відображається, натисніть клавішу F11, щоб відкрити її.

  3. Клацніть маркер виділення рядка для поточного первинного ключа.

    Якщо первинний ключ складається з одного поля, клацніть маркер виділення рядка для цього поля.

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

  4. На вкладці Конструктор у групі Знаряддя виберіть елемент Первинний ключ.

    Піктограма ключа видаляється з поля або полів, які було попередньо вибрано як первинний ключ.

Примітка.: У разі збереження нової таблиці без вибору первинного ключа відобразиться запит програми Access на створення ключа. Якщо вибрати варіант Так, Access створить поле ідентифікатора, у якому використовується тип даних «Лічильник» для надання унікального значення для кожного запису. Якщо таблиця вже містить поле «Лічильник», це поле використовується програмою Access як первинний ключ.

Змінення первинного ключа в Access

Ось як змінити первинний ключ таблиці:

  1. Вилучіть наявний первинний ключ, як описано в розділі Вилучення первинного ключа.

  2. Установіть первинний ключ, як описано в розділі Установлення первинного ключа за допомогою наявних в Access полів.

Додаткові відомості

Докладні відомості про розробку баз даних і вибір відповідного первинного ключа див. в таких статтях:

На початок сторінки

Удосконалення навичок роботи з Office
Ознайомтеся з навчальними матеріалами
Отримуйте нові функції раніше за інших
Приєднайтеся до оцінювачів Office

Ця інформація корисна?

Дякуємо за ваш відгук!

Дякуємо за відгук! Схоже, вам може стати в нагоді допомога одного з наших спеціалістів служби підтримки Office, з яким ми вас можемо з’єднати.

×