..vedendo una prova di maturità di informatica di due anni fa ho visto che la traccia chiedeva anche di stabilire le relazioni tra gli attributi per l'integrità referenziale..
ma cosa sono?!e come si trovano?!..
tnx![]()
..vedendo una prova di maturità di informatica di due anni fa ho visto che la traccia chiedeva anche di stabilire le relazioni tra gli attributi per l'integrità referenziale..
ma cosa sono?!e come si trovano?!..
tnx![]()
[ SimplyMepis 8 ]Copyleft
www.mepisitalia.org IL SITO ITALIANO UFFICIALE DI MEPIS
www.salentomovida.it LA MOVIDA DEL SALENTO HA UN NUOVO PUNTO D'INCONTRO SUL WEB
[ SUD SOUND SYSTEM MINA FUECU INTRA ALLU SALENTU ]
Facciamo subito un esempio.
Supponiamo di avere 2 tabelle
1) ARTICOLI che contiene i vari articoli pubblicati su di un sito e tra le altre cose contiene un campo ID_AUTORE
2) AUTORI che contiene informazioni sugli autori come il nome, il cognome, l'email e tra i tanti campi c'è anche qua il campo ID_AUTORE.
La tabella AUTORI e la tabella ARTICOLI sono in relazione semplice uno a molti ciò vuol dire che ogni autore puo aver pubblicato zero, uno o più articoli.
il legame è dato dal campo ID_AUTORE.
quando si preleva un record dalla tabella ARTICOLI questo conterrà anche l' ID_AUTORE ad esempio 123.
per avere informazioni dettagliate sull'autore di questo articolo basta prelevare dalla tabella AUTORI quello che ha l'ID_AUTORE uguale a 123.
Adesso se dalla tabella AUTORI cancello il record ID_AUTORE=123 cosa succede?
Se non seguo una regola di integrità referenziale tutti gli articoli che avranno ID_AUTORE = 123 si riferiramnno ad un autore che non esiste più!
Un esempio di regola di integrità referenziale potrebbe essere:
Quando cancello un autore devo cancellare ache tutti gli articoli di quall'autore.
oppure
Quando cancello un autore devo impostare in campo ID_AUTORE a 0 per indicare che sono anonimi.
Ora molti db consentono di dichiarare queste regole come parte del db stesso, altri no.
La differenza?
Se il db ha supporto nativo per l'integrità referenziale basta dirgli quali sono le regole e lui garantirà che vengano rispettate (ad esempio cancellando in automatico tutti gli articoli di quell'autore)
Se il db non lo supporta devo farlo io, io programma.
L'argomento è complesso comunque spero sia sufficiente come inizio