Casa Bases de dades Què és una clau estrangera? - Definició de tecnologia

Què és una clau estrangera? - Definició de tecnologia

Taula de continguts:

Anonim

Definició: què significa la clau estrangera?

Una clau estrangera és una columna o grup de columnes d'una taula de bases de dades relacional que proporciona un enllaç entre les dades de dues taules. Funciona com a referència creuada entre taules perquè fa referència a la clau primària d’una altra taula, establint així un enllaç entre elles.

La majoria de taules d’un sistema de base de dades relacional s’adhereixen al concepte de clau estrangera. A bases de dades complexes i magatzems de dades, les dades d’un domini s’han d’afegir a diverses taules, mantenint així una relació entre elles. El concepte d'integritat referencial deriva de la teoria de claus estrangeres.

Les claus estrangeres i la seva implementació són més complexes que les claus primàries.

Techopedia explica Key Foreign

Per a qualsevol columna que actuï com a clau estrangera, hauria d'existir un valor corresponent a la taula d'enllaços. S’ha de tenir especial precaució a l’hora d’inserir dades i eliminar dades de la columna de clau estrangera, ja que una supressió o inserció descuidada podria destruir la relació entre les dues taules.

Per exemple, si hi ha dues taules, el client i l’ordre, es pot crear una relació entre elles mitjançant la introducció d’una clau externa a la taula de comandes que fa referència a l’ID de client a la taula de clients. La columna d'identificació de client existeix tant a les taules de clients com a les de comandes. La identificació de client de la taula de comandes es converteix en la clau estrangera, fent referència a la clau principal de la taula de clients. Per inserir una entrada a la taula de comandes, s'ha de satisfer la restricció de clau exterior. Un intent d’introduir una identificació de client que no està present a la taula de clients falla, mantenint així la integritat referencial de la taula.

Algunes accions referencials associades a una acció de clau exterior inclouen les següents:

  • Cascada: quan se suprimeixen les files de la taula pare, també se suprimeixen les columnes de clau externa coincidents de la taula secundària, creant una eliminació en cascada.
  • Definiu Nul: quan es elimina o actualitza una fila de referència de la taula pare, els valors de la clau estrangera de la fila de referència es defineixen en nuls per mantenir la integritat referencial.
  • Disparadors: Les accions referencials s’implementen normalment com a disparadors. En moltes formes, les accions de claus estrangeres són semblants als disparadors definits per l'usuari Per garantir una execució adequada, de vegades les accions referencials ordenades se substitueixen per activadors definits per l'usuari equivalents.
  • Estableix el valor predeterminat: aquesta acció referencial és similar a "set null". Els valors de la clau externa de la taula secundària es defineixen en el valor de columna predeterminat quan se suprimeix o actualitza la fila de referència de la taula pare.
  • Restringir: es tracta de l’acció referencial normal associada a una clau estrangera. Un valor de la taula pare no es pot suprimir ni actualitzar sempre que faci referència a una clau estrangera en una altra taula.
  • Sense acció: aquesta acció referencial és similar a la de l'acció "restringir", excepte que no es realitza una comprovació de cap acció només després d'intentar alterar la taula.
Què és una clau estrangera? - Definició de tecnologia