salve ragazzi...
ho un problema che non riesco a risolvere, quindi ho pensato di chiedere un vostro consiglio..
devo progettare un database che deve essere utilizzato da una applicazione software... il dbms in questione è HSQL.
il problema è che devo far in modo che per ogni entità di una determinata tabella, la lista dei suoi attributi sia contenuta in una seconda tabella.
cerco di essere più chiaro;
il sistema può decidere ad esempio che ad ogni "Studente" vengano associati dei valori quali "nome" o "cognome"... ma deve avere successivamente la possibilità di volerne aggiungere qualcuno... o di eliminarne altri.
la mia idea iniziale era quella di lavorare con 3 tabelle, definite così (seguo l'esempio su studenti)...
tab Studenti ( idStudente )
tab Attributi (idAttributo, NomeAttrib )
tab Valori (idStudente, idAttrib, valore)
in questo modo è facile ottenere l'IdStudente che ha 'piero' come valore dell'attrib di nome 'Nome'
ma come si fa ad ottenere gli IdStudente che hanno come valore 'roma' all'attrib di nome 'Città' e contemporaneamente il valore 'SI' all'attrib di nome 'Fuorisede' ???
....considerando il fatto che la ricerca può essere fatta anche su più di 3 / 4 attrib per volta diventa complicato...
c'è per caso un'altra strategia che potrei utilizzare?
sono un po' in panne...
grazie per l'aiuto

Rispondi quotando