mazda91 ha scritto:
Per la tabella TEventi devi prevedere una seconda tabella 'figlia' TEventiPersone che conterrà <n> righe quante sono le persone coinvolte, ed i rispettivi 'ruoli' (clienti, locatore, garante, ...)
Io pensavo di legare la tabella TTipologia con TPersona mettendo in quest'ultima un campo (ricerca) che andasse a prelevare da TTipologia i ruoli.
Così non va ?
No, non va bene.
Se tu hai 'diverse' persone oltretutto con ruoli differenti, devi gestirli in una tabella 'figlia'.
Altrimenti come fai a definirli tutti?
Dovresti essere costretto a creare tanti campi quanti sono i possibili ruoli di ogni persona; se un domani si crea un nuovo ruolo diventa necessario creare un nuovo campo, e ciò implica la modifica strutturale del database e dell'intefaccia.
Invece usando la tabella 'figlia' puoi elencare quanti ruoli vuoi senza limiti. Basta aggiungere il 'ruolo' nella tabella TTipologie.
E' lo stesso concetto della tabella Recapiti, in cui si tengono telefono, cell., fax, indirizzo, sito web, ecc. ecc. ecc. dei clienti.
Come fai a sapere a proprio quanti cellulari, telefoni, ecc. servono? Non puoi. Ecco allora che serve una tabella Recapiti in cui per lo stesso cliente puoi tenere un numero illimitato di recapiti senza preoccuparti di nulla.
L'importante è avere una tabella Tipologie che permettono di selezionare solo i contatti di un certo tipo.