5° Anno TEORIA 4. Introduzione al linguaggio SQL | Page 6

16 . Il linguaggio SQL Vers . 9.3 – Marzo 2024
Vedi esempio da svolgere ( con query ) http :// www . riochierego . it / mobile / docs / quinta / lab / ESERCITAZIONE-db-esempio-DIPENDENTE- REPARTO-SOLO-TESTO-QUERY-ALUNNO . pdf
Riferendoci alle tabelle presenti nell ’ esempio sopra indicato , proviamo a dettagliare meglio il significato delle clausole NO ACTION | RESTRICT , CASCADE , SET NULL oppure SET
DEFAULT nell ’ ipotesi volessimo in seguito effettuare la cancellazione di una ennupla ( ON DELETE ) oppure l ’ aggiornamento del valore della chiave di un ’ ennupla ( ON UPDATE ) referenziata all ’ interno della tabella che stiamo creando .
Quindi al momento dell ’ istruzione di CREATE TABLE di una certa tabella occorrerà interrogarsi su quale dovrà essere il comportamento più corretto da assumere per garantire l ’ integrità dei dati presenti nel database , in caso di tale eventualità .
Le domande che ci poniamo sono :
Impedire del tutto l ’ operazione ? Consentirla a cascata ? Impostare il campo / i che formano la chiave esterna al valore NULL ? Impostare il campo / i che formano la chiave esterna ad un valore di default ?
Esempio pratico : Database " AziendaNew "
Cosa accadrà nel nostro database , quando proveremo a CANCELLARE ( ON DELETE ) dalla tabella " Reparto " l ’ istanza avente chiave ( primaria ) pari a " R2 "?
- In caso di NO ACTION | RESTRICT ( comportamento di default ): operazione di cancellazione NON consentita sulla tabella " Reparto " perché ciò renderebbe il database incongruente !
Situazione iniziale
Chiave primaria o PK
Chiave esterna o FK
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 6