2oldman wrote:
CloudDriver wrote:
Each cassette name is entered once, each song name is entered once, even if it is on more than one cassette - each artist name is entered once, even if that artist sings many songs on many cassettes.
How would you search your database design to find out how many cassettes Artist A appears on? Perhaps I'm misunderstanding 'artist name is entered once.'
This is probably way too much for this application, but for searchable internet databases, yeah.
As I said, it's more complicated than that.
For a cassette database, I would create a data entry form that showed one cassette and also a subform that showed the list of songs and artists for that cassette. The subform would have a drop down list containing the song names that had already been entered for other cassettes, along with the option to enter a new song name. The artist field would also have a drop down for previously entered artists, plus the option to enter a new artist. By using drop downs, the song name and artist name needs to be entered only once in a table. A query would likely be needed when creating the subform vs. using just the tables.
Since an artist can sing on more than one cassette and a song can be sung by several artists and on more than one cassette, two more tables are needed to store the links (which are the table primary key field numbers).
And yes, it is easy with a database to do searches by artist name, song name, etc. to display which cassette or cassettes have a particular song or artist. It wouldn't be necessary to type in an artist name, just use a drop down list of the names already entered to select the desired artist.
Databases are extremely powerful, but are best used when there is a lot of data. 14 cassettes isn't a lot of data, so a spreadsheet is easier/quicker.