Buongiorno. Gestisco da 20 anni almeno un database access rudimentale per tenere in ordine la mia grande passione: il cinema ed in particolar modo le filmografie registi. Quando ho creato con pochissime o quasi nulle nozioni di access l’ho fatto in maniera molto semplice. Due tabelle:
- Registi con campi ID, nome e cognome, nazionalità, anno di nascita
- Film con campo ID, titolo, Id regista, voto personale, voto critica
Ho applicato integrità referenziale 1 a infinito tra id tabella 1 e Id regista in tabella 2.
Ho creato varie maschere basate su query che mi tirano fuori varie informazioni (ad esempio una che mi tira fuori una classifica di tutti i registi inseriti per media voto film visti) e un pannello comandi che fa da sommario.
Attualmente popolo il database da una di queste maschere ed in particolar modo da una maschera di collegamento (per comodità la chiamiamo maschera1) tra tabella 1 e tabella 2 creata in automatico da access che mostra in alto i dati del regista (provenienti da tabella 1) e nella parte bassa l’elenco dei film di ogni regista con tutti i dati disponibili (provenienti da tabella 2). Da questa maschera inserisco sia i nuovi registi che via via conosco con la relativa filmografia sia inserisco per i registi già presenti i nuovi film che via via vengono prodotti.
Ora dopo 20 anni il numero di registi è cresciuto enormemente quindi la vecchia linearità del db mi soddisfa meno per cui ho pensato a soli scopi di consultazione di dividere i registi per qualche categoria. Restando ai campi attualmente disponibili della tabella1 e a titolo di esempio potrei pensare di dividerli per nazionalità.
Quindi mi piacerebbe continuare ad utilizzare la vecchia maschera 1 per continuare a popolare le due tabelle originarie con i nuovi registi e i nuovi film. Però mi piacerebbe creare una maschera di consultazione del tutto uguale a maschera1 solo che mi visualizza solo i registi italiani…e poi una uguale che mi mostra solo i registi americani, un’ altra solo quelli giapponesi e così via…
Ora avendo disponibile il campo nazionalità nella tabella registi ho pensato che la cosa fosse semplice semplice. Faccio una query per nazionalità e mi tiro fuori i registi di una sola nazione (ad esempio queryItalia per i registi italiani). Applico integrità referenziale tra la queryItalia così ottenuta e la vecchia tabella 2 creo maschera di collegamento ed il gioco è fatto.
Invece no perché la relazione che mi crea access non è una ad infinito per cui la maschera registi italiani che vorrei creare del tutto uguale a quella di popolamento ma che mi permette di consultare solo i registi italiani non funziona. Cosa c’è che non va nella mia idea di funzionamento?
Visto che non ho nozioni reali di programmazione db vi viene in mente qualcosa per risolvere il mio problema anche seguendo una strada diversa rispetto a quella da me pensata?
Ovviamente vi ho proposto una categorizzazione per nazionalità di registi solo a titolo di esempio in realtà una volta risolta la problematica proporrei aggiungendo nuovi campi alla tabella registi delle categorizzazioni per me più interessanti …che ne so? I grandi registi classici di Hollywood, i maestri del neorealismo ecc ecc…
Mi scuso ovviamente in anticipo se dal punto di vista della programmazione ho commesso o ho scritto qualche “sfondone”…. :)
Saluti e buona domenica a tutti