Concetto/Termine Foreign Key/Index

Articolo di Andrea Nicchi

La locuzione "foreign key", che come si sa corrisponde all’italiano "chiave esterna", racchiude un concetto molto importante che è stato introdotto con l’avvento del modello relazionale dei Data Base Management System.

Con la chiave esterna, in sostanza, si rappresentano le relazioni che ci sono tra le entità in gioco nel Data Base.

Visual Foxpro appartiene alla famiglia dei Data Base Management System relazionali, per cui fa uso di questo concetto.

La locuzione "foreign index", credo che sia legata a Visual Foxpro, perché significa l’indice (per questo viene richiesto un tag) legato alla chiave esterna della tabella relazionata, in cui viene sfruttata la tecnologia Rushmore che contraddistingue Foxpro. In altre parole quando si rappresenta una relazione si indica anche l’indice su quella relazione per velocizzare il recupero di informazioni associate alla tabella corrente.

In ALTER TABLE … infatti si ha :

ADD FOREIGN KEY [eExpression5] TAG TagName4 [FOR lExpression6]

Adds a foreign (non-primary) index to the table. eExpression5 specifies the foreign index key expression and TagName4 specifies the name of the foreign index tag. Index tag names can contain up to 10 characters

che in concreto significa che viene creata una relazione persistente con la tabella padre.

Con un esempio cercherò di essere più chiaro.

 

Step 1. Creiamo un Data Base Container come In Figura 1, tab_a e la tabella figlia, tab_b è la tabella padre.

Step 2 Eseguiamo le istruzioni:

*-- Apertura Data Base

OPEN DATABASE fk.dbc EXCLUSIVE

*-- Apertura Tabelle

USE tab_a.dbf IN 0 EXCLUSIVE

USE tab_b.dbf IN 0 EXCLUSIVE

*-- Creazione Primary Key nella Tabella Padre

ALTER TABLE TAB_B ADD PRIMARY KEY BCODE TAG BCODE

*-- Creazione della Relazione Persistente Padre Figlio

ALTER TABLE tab_a ;

ADD FOREIGN KEY tab_B.bcode TAG bcode REFERENCES tab_B

 

Step 3 Otteniamo il risultato mostrato in Figura 2

Copyright dell'articolo:Andrea Nicchi

© FoxPro e Visual FoxPro sono un marchi registrati da Microsoft Corporation



Data: 25/09/1999
webmaster@foxitaly.com

dal 22 Giugno 1999