- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- Mysql e Access, campi di tabelle diverse collegati fra loro
-
Mysql e Access, campi di tabelle diverse collegati fra loro
Ciao a tutti, volevo porvi una domanda, in mysql si possono collegare due campi di due tabelle diverse come in Access, in modo che se cancello un campo nella prima tabella, di conseguenza senza dover scrivere altro codice si cancelli anche nella seconda?
Esempio
1a tabella
Id_user(primaria)
username
name
..
..2a tabella
id_articolo
id_userora in Access tempo fa si collegavano i 2 campi id_user, e quando cancellavi l'user 1 dalla prima tabella automaticamente, si cancellavano tutte le righe della seconda tabella che avevano id_user = 1, ora in mysql si può fare??:?
-
Non so se esista una funzionalità del genere, ma in alternativa con MySQL 5 è possibile creare una stored procedure che effettua gli aggiornamenti e/o le cancellazioni ed un trigger che quando innescato (update o delete sulla prima tabella) invoca la corrispondente stored procedure.
-
Ho letto un pò in giro mi pare che si chiamino foreign key, ma non riesco a verificarle
-
Le foreign key sono chiavi di relazione verso tabelle esterne. E' possibilie inserire constraint che impediscono di inserire e/o modificare i campi coinvolti con valori non coerenti, ma non permettono di effettuare l'operazione che richiedi.
-
Quando crei la tabella o successivamete quando inserisci una constraint devi utilizzare le opzioni ON UPDATE CASCADE ON DELETE RESTRICT.
-
quindi alla fine faccio tutto da php e non se ne parla più!!