У дома Данни на Guide-Bulgaria.com Какво е чужд ключ? - определение от техопедия

Какво е чужд ключ? - определение от техопедия

Съдържание:

Anonim

Определение - Какво означава чуждестранен ключ?

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

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

Чуждите ключове и тяхното изпълнение са по-сложни от първичните ключове.

Техопедия обяснява чуждия ключ

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

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

Някои референтни действия, свързани с чуждо ключово действие, включват следното:

  • Cascade: Когато редовете в родителската таблица са изтрити, съвпадащите колони с чужд ключ в дъщерната таблица също се изтриват, създавайки каскадно изтриване.
  • Задайте нула: Когато референтен ред в родителската таблица бъде изтрит или актуализиран, стойностите на чужди ключове в референтния ред са зададени на нула, за да се поддържа референтната цялост.
  • Тригери: Референтните действия обикновено се изпълняват като тригери. В много отношения чуждите ключови действия са подобни на дефинираните от потребителя тригери. За да се осигури правилното изпълнение, подредените референтни действия понякога се заменят с техните еквивалентни дефинирани от потребителя тригери.
  • Задаване по подразбиране: Това референтно действие е подобно на „задаване на нула“. Стойностите на чужди ключове в дъщерната таблица се задават на стойността на колоната по подразбиране, когато реферираният ред в родителската таблица бъде изтрит или актуализиран.
  • Ограничаване: Това е нормалното референтно действие, свързано с чужд ключ. Стойност в родителската таблица не може да бъде изтрита или актуализирана, стига да е посочена от чужд ключ в друга таблица.
  • Без действие: Това референтно действие е подобно по функция на "ограничи" действието, освен че проверка без действие се извършва само след опит за промяна на таблицата.
Какво е чужд ключ? - определение от техопедия