I want to create a database to store information about my music collection. I want to be able to query the database for each of the following attributes:

•a particular title (for example, Tapestry or Beethoven’s Fifth Symphony)
•artist (for example, Carole King or the Chicago Symphony Orchestra)
•format of the recording (for example, CD or tape)
•style of music (for example, rock or classical)
•year recorded
•year acquired as part of your collection
•recording company
•address of the recording company

Can you help me to design the tables that I need so that they are all in third normal form.I also want to create at least five sample data records for each table I create.

Can someone help me here please!.I'm novice when it comes to databases.
Eager Student

Recommended Answers

All 6 Replies

Okay, first thing when designing a database is to know what it is you are looking to do. You are looking to create a music database so we need to understand all the different entities used in order to model our database. Entities are the objects that we simulate, they can be physical items such as musical bands and abstract items such as genres. Each entity you can identify is a way of identifying each table necessary by default for your database. Entities are the basic naming part of a group and then, under entities, we have their properties which form our fields i.e. a band's name, year formed, year split etc. are all properties.

So, when we think about it the following are our entities:

  • Artist
  • Song
  • Genre (Rock, Pop, Jazz, etc.)
  • Format (Cassette, LP, CD, etc.)
  • Record Company

So, we have 5 tables to begin with. Now, when we look at some of these we realise that more than one artist can sing a song and one song can be song by many artists. Therefore we have a many-to-many relationship. This can only mean we need a new table to simulate this. So, we add a new table for artists to songs. Record companies, likewise, can form a many-to-many relationship with artists. We need a table for this join. We keep doing this until we are satisfied all our relationships are correct.

For our record company we'll need their name, address, phone number, email, etc. We don't need the bands that come under their umbrella - that's done in our joining table.

I don't have time to go much further into this in detail but I hope that can you a start in where to look. The keyword in all of this is normalization - search the web; there's loads of tutorials on this.

Sounds like your in college and looking at your Office XP Book ? :) I recently did that assignment ;)

Well, I don't quite grasp Zachery what do you mean by saying" I recently did that assignment".I will be grateful if you can briefly explain that for me please!!!.

Eager Student

Sounds like your in college and looking at your Office XP Book ? :) I recently did that assignment ;)

Well, Thank you very much for explanation it gave me a clear direction a little, I have searched for normalization and I got a good normalization tutorials.Thank you very much I highly I appreciate your help.

Eager Student

Okay, first thing when designing a database is to know what it is you are looking to do. You are looking to create a music database so we need to understand all the different entities used in order to model our database. Entities are the objects that we simulate, they can be physical items such as musical bands and abstract items such as genres. Each entity you can identify is a way of identifying each table necessary by default for your database. Entities are the basic naming part of a group and then, under entities, we have their properties which form our fields i.e. a band's name, year formed, year split etc. are all properties.

So, when we think about it the following are our entities:

  • Artist
  • Song
  • Genre (Rock, Pop, Jazz, etc.)
  • Format (Cassette, LP, CD, etc.)
  • Record Company

So, we have 5 tables to begin with. Now, when we look at some of these we realise that more than one artist can sing a song and one song can be song by many artists. Therefore we have a many-to-many relationship. This can only mean we need a new table to simulate this. So, we add a new table for artists to songs. Record companies, likewise, can form a many-to-many relationship with artists. We need a table for this join. We keep doing this until we are satisfied all our relationships are correct.

For our record company we'll need their name, address, phone number, email, etc. We don't need the bands that come under their umbrella - that's done in our joining table.

I don't have time to go much further into this in detail but I hope that can you a start in where to look. The keyword in all of this is normalization - search the web; there's loads of tutorials on this.

I mean you were speciifcly asking for help with a homework assignment :p

You got that wrong you, I think you need to have one of my developed web guessing games so that in future you may guess things right.Lastly you should be careful with words you use some people retaliate some learn your personalitiles through your own mouth.If you want some of my products(guessing games) just tell me and give me your e-mail address then I will forward them unto you.

Eager Student

I mean you were speciifcly asking for help with a homework assignment :p

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.