Подтвердить что ты не робот

Какие типы ключей используются в СУБД?

Каковы различные типы ключей в РСУБД? Приложите примеры с ответом.

4b9b3361

Ответ 1

Из здесь и здесь: (после того, как я googled ваш заголовок)

  • Альтернативный ключ. Альтернативным ключом является любой ключ кандидата, который не выбран как первичный ключ.
  • Ключ кандидата - ключ-кандидат - поле или комбинация полей, которые могут действовать как поле первичного ключа для этой таблицы, чтобы однозначно идентифицировать каждую запись в этой таблице.
  • Составной ключ - составной ключ (также называемый составным ключом или конкатенированным ключом) - это ключ, состоящий из двух или более атрибутов.
  • Первичный ключ - первичный ключ - это значение, которое может использоваться для идентификации уникальной строки в таблице. С ним связаны атрибуты. Примерами первичных ключей являются номера социального страхования (связанные с конкретным лицом) или ISBN (связанные с конкретной книгой). В реляционной модели данных первичный ключ - это ключ-кандидат, выбранный в качестве основного метода однозначной идентификации кортежа в отношении.
  • Superkey. Суперклас определен в реляционной модели как набор атрибутов переменной отношения (relvar), для которой он содержит, что во всех отношениях, назначенных этой переменной, нет двух разных кортежей (строк), которые имеют одинаковые значения для атрибутов в этом наборе. Эквивалентно суперклассу можно также определить как набор атрибутов relvar, на котором все атрибуты relvar функционально зависимы.
  • Внешний ключ - внешний ключ (FK) - поле или группа полей в записи базы данных, которая указывает на поле ключа или группу полей, образующих ключ другой записи базы данных в некоторой (обычно другой) таблице. Обычно внешний ключ в одной таблице относится к первичному ключу (PK) другой таблицы. Таким образом могут быть сделаны ссылки для связывания информации вместе, и она является важной частью нормализации базы данных.

Ответ 2

(I) Супер ключ. Атрибут или комбинация атрибута, который используется для идентификации записей однозначно, называется Super Key. В таблице может быть много супер-ключей.

например. супер ключа

  • ID
  • Идентификатор, имя
  • ID, адрес
  • ID, Department_ID
  • ID, Зарплата
  • Имя, адрес
  • Имя, адрес, Department_ID

Таким образом, любая комбинация, которая может однозначно идентифицировать записи, будет Super Key.

(II) Ключ кандидата. Его можно определить как минимальный Super Key или неприводимый Super Key. Другими словами, атрибут или комбинация атрибута, который однозначно идентифицирует запись, но ни один из ее собственных подмножеств не может однозначно идентифицировать записи.

например. Ключа кандидата

  • ID
  • Имя, адрес

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

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

например. основного ключа. Разработчик базы данных может использовать один из ключей кандидата в качестве основного ключа. В этом случае у нас есть "ID" и "Name, Address" в качестве ключа-кандидата, мы будем рассматривать ключ "ID" в качестве основного ключа, так как другой ключ представляет собой комбинацию из нескольких атрибутов.

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

например. внешнего ключа. Давайте рассмотрим, что у нас есть другая таблица, то есть таблица отделов с атрибутами "Department_ID", "Department_Name", "Manager_ID", "Location_ID" с идентификатором Department_ID в качестве основного ключа. Теперь атрибут Department_ID таблицы Employee (зависимая или дочерняя таблица) может быть определен как внешний ключ, поскольку он может ссылаться на атрибут Department_ID в таблице Departments (ссылка или родительская таблица), значение внешнего ключа должно соответствовать существующему значению в родительская таблица или NULL.

(V) Композитный ключ. Если мы используем несколько атрибутов для создания Первичного ключа, то Первичный ключ называется Composite Key (также называемым Compound Key или Concatenated Key).

например. из Composite Key, если мы использовали "Имя, адрес" в качестве основного ключа, то это будет наш составной ключ.

(VI) Альтернативный ключ. Альтернативным ключом может быть любой из клавиш-кандидатов, кроме основного ключа.

например. Альтернативного ключа - "Имя, адрес", поскольку он является единственным другим ключом кандидата, который не является Первичным ключом.

(VII) Вторичный ключ. Атрибуты, которые не являются даже Super Key, но могут использоваться для идентификации записей (не уникальных), называются вторичным ключом.

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

Ответ 3

Олафур забыл суррогатный ключ:

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

Ответ 4

Также существует УНИКАЛЬНЫЙ КЛЮЧ. Основное различие между PRIMARY KEY и UNIQUE KEY заключается в том, что PRIMARY KEY никогда не принимает значение NULL, а UNIQUE KEY может принимать значение NULL. Кроме того, в таблице может быть только один ПЕРВЫЙ КЛЮЧ, а УНИКАЛЬНЫЙ КЛЮЧ может быть более одного.

Ответ 5

Существует также КЛЮЧ SURROGATE: он возникает, если один не первичный атрибут зависит от другого атрибута non prime. в этот раз вам теперь не нужно выбирать, какой ключ является основным ключом для разделения вашей таблицы. В этом случае вместо первичного ключа используйте суррогатный ключ. Обычно этот ключ определяется системой и всегда имеет числовые значения, и его значение часто автоматически увеличивается для новых строк. Например: ms acces = auto number и мой столбец SQL = identity и oracle = sequence.

Ответ 6

Частичный ключ:

Это набор атрибутов, которые могут однозначно идентифицировать слабые объекты и относящиеся к одному и тому же объекту владельца. Это когда-то называется дискриминатором.

Альтернативный ключ:

Все Ключи Кандидатов, исключая Первичный ключ, известны как Альтернативные Ключи.

Искусственный ключ:

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

Составной ключ:

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

Натуральный ключ:

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

Ответ 7

Что такое ключ в реляционной базе данных?

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

Ключи служат для двух важных целей:

1.Используется для создания взаимосвязи между различными таблицами

2. Используется для упорядочения (последовательности) или быстрого доступа к хранимым данным из баз данных

Что такое супер-ключ?

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

введите описание изображения здесь

В приведенной выше таблице столбец {'student_number} может однозначно идентифицировать каждую строку в таблице. Таким образом, столбец {'student_number} является супер-ключом. Аналогично, комбинация столбцов {'student_number, student_name}, {' student_number, exam_registered}, {'student_number, student_name,' exam_registered} и т.д. Также может однозначно идентифицировать каждую строку. Следовательно, их также можно назвать супер-ключами.

Что такое ключ кандидата?

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

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

введите описание изображения здесь

В приведенной выше таблице {{serial_number} или комбинация {'student_name, exam_registered} являются единственно возможными ключами-кандидатами. В последнем случае, когда задействованы два столбца, оба "student_name" и "exam_registered" не могут однозначно идентифицировать строки самостоятельно. Также есть шансы в будущем, что другой студент по имени Адам может быть добавлен в вышеприведенную таблицу, возраст которой также составляет 23 года и зарегистрирован для того же экзамена по английскому языку, что и существующий студент по имени Адам. В этом случае только столбец {'student_number} будет служить твердым ключом кандидата для указанной выше таблицы.

Что такое первичный ключ?

Это ключ-кандидат, выбранный разработчиком/разработчиком базы данных, чтобы однозначно идентифицировать каждую строку в таблице во время процесса создания/создания таблицы. Обычно значение первичного ключа не может быть NULL. Также первичный ключ используется для целей индексирования в большинстве вариантов баз данных.

Что такое составной ключ?

Когда первичный ключ состоит из более чем одного столбца, он вызывается как составной первичный ключ или просто составной ключ или составной ключ или конкатенированный ключ!

введите описание изображения здесь

В приведенной выше таблице, когда разработчик, который проектирует таблицу, устанавливает комбинацию столбцов {'student_number, exam_registered} в качестве первичного ключа, тогда теоретически это будет известно как составной первичный ключ.

Что такое внешний ключ?

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

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

введите описание изображения здесь

Предположим, что столбец "student_number в приведенной выше" таблице экзамена (дочерняя таблица) ссылается на столбец "student_number" в таблице "student_detail" (родительская таблица).

Когда мы пытаемся ввести строку для "student_number = 5 в таблице экзаменов", это не будет принято, поскольку в таблице "student_detail" нет записи для "student_number = 5". Эта концепция называется ссылочной целостностью в реляционных базах данных.

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

Что такое альтернативный ключ?

Это ключ-кандидат, кроме первичного ключа.

введите описание изображения здесь

В приведенной выше таблице {{serial_number} или комбинация {'student_name, exam_registered} являются единственно возможными ключами-кандидатами. Когда разработчик базы данных устанавливает столбец {'serial_number} в качестве основного ключа, тогда комбинация столбцов {' student_name, exam_registered} будет вызываться как альтернативный ключ.

Что такое вторичный ключ?

Это столбец или группа столбцов в таблице, которые даже не квалифицируются как супер-ключ, но все же идентифицируют строки в таблице (могут быть не уникальными)

введите описание изображения здесь

Что такое простой ключ?

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

-It должен однозначно идентифицировать строку -Это должен быть один столбец (он не может быть комбинацией нескольких столбцов)

Что такое суррогатный ключ?

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

зачем нам суррогатный ключ?

Предположим, что мы храним ключи продукта для разных программных продуктов в таблице. Обычно ключи продукта представляют собой комбинацию буквенно-цифровых символов (например: ключ продукта, который нам нужно активировать Microsoft Office/Windows OS). Ключи продуктов способны однозначно идентифицировать каждую строку. Но когда мы делаем это как первичный ключ, он занимает огромное пространство памяти, так как первичный ключ будет индексироваться в большинстве реляционных баз данных. Также при использовании столбцов этого типа в предложении соединения производительность будет уменьшена.

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

Что такое естественный ключ?

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

=============================================== ==========================

Различные типы ключей в РСУБД

Ответ 8

Разделяя мои заметки, которые я обычно поддерживаю при чтении из Интернета, надеюсь, что это может быть полезно кому-то.

Ключ кандидата или доступные клавиши

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

Основной ключ

Такой тип ключа-кандидата, который выбран в качестве первичного ключа для таблицы, известен как первичный ключ. Первичные ключи используются для идентификации таблиц. В таблице есть только один первичный ключ. В SQL Server, когда мы создаем первичный ключ для любой таблицы, кластеризованный индекс автоматически создается в этом столбце.

Внешний ключ

Внешний ключ - это те ключи, которые используются для определения отношения между двумя таблицами. Когда мы хотим реализовать взаимосвязь между двумя таблицами, мы используем концепцию внешнего ключа. Он также известен как ссылочная целостность. Мы можем создать более одного внешнего ключа для каждой таблицы. Внешний ключ обычно является первичным ключом из одной таблицы, которая отображается как поле в другой, где первая таблица имеет отношение ко второй. Другими словами, если бы у нас была таблица A с первичным ключом X, связанная с таблицей B, где X было полем в B, тогда X будет внешним ключом в B.

Альтернативный ключ или вторичный

Если какая-либо таблица имеет более одного ключа-кандидата, то после выбора первичного ключа из этого ключа-кандидата остальные ключи-кандидаты известны как альтернативный ключ этой таблицы. Как здесь, мы можем взять очень простой пример, чтобы понять концепцию альтернативного ключа. Предположим, что у нас есть таблица с именем Employee, которая имеет два столбца EmpID и EmpMail, оба имеют нулевые атрибуты и уникальное значение. Таким образом, оба столбца рассматриваются как ключ-кандидат. Теперь мы делаем EmpID в качестве первичного ключа к этой таблице, тогда EmpMail известен как альтернативный ключ.

Композитный ключ

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

Натуральные клавиши

Естественным ключом является один или несколько существующих атрибутов данных, которые являются уникальными для бизнес-концепции. Для таблицы Customer было два ключа-кандидата, в этом случае CustomerNumber и SocialSecurityNumber. Ссылка http://www.agiledata.org/essays/keys.html

Суррогатный ключ

Ввести новый столбец, называемый суррогатным ключом, который является ключом, который не имеет никакого коммерческого значения. Примером этого является столбец AddressID таблицы Address на рисунке 1. Адреса не имеют "простого" естественного ключа, потому что вам нужно будет использовать все столбцы таблицы Address, чтобы сформировать ключ для себя (вы можете быть в состоянии уйти с комбинацией Street и ZipCode в зависимости от вашего проблемного домена), поэтому введение суррогатного ключа - намного лучший вариант в этом случае. Ссылка http://www.agiledata.org/essays/keys.html

Уникальный ключ

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

Совокупные или сложные клавиши

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

Простой ключ

Простой ключ, созданный только из одного атрибута.

Супер ключ

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

Клавиша частичного ключа или дискриминатора

Это набор атрибутов, которые могут однозначно идентифицировать слабые объекты и относящиеся к одному и тому же объекту владельца. Это когда-то называется дискриминатором.