Link to home
Start Free TrialLog in
Avatar of Co-Rose
Co-RoseFlag for United States of America

asked on

Database design

Hi there, im assigned to design a MS access database with scenario is:
Design a Fund-Raising Volunteer database for a not-for-profit organisation. The volunteers raise funds by calling people to ask for donations. with bussiness rules are:
 - A volunteer may do many hours of work collecting donations for the organisation
 - Donations for each volunteer are recorded and totalled by the hour
 - The organisation needs to know how many calls each volunteer makes each hour on a particular day to get those donations
 - Donations are obtained by many volunteers who may work for more than one hour and more than one day
 - The organisation does not want to have unique identifiers (keys) for each donation
----
after study, i think the database must have a
[table Volunteer] VolunteerID, Name, Address, Phone
[table Donation] DonationID, Name, amount
[table VolunteerDonation] volunterID, donationID

relationship between Volunteer and Donation is many-to-many through VolunteerDonation
That all i can see through this scenario, i dont have any ideals for its bussiness rules. Can you help me to make it clear
Avatar of Scott McDaniel (EE MVE )
Scott McDaniel (EE MVE )
Flag of United States of America image

First: Is this an academic question?

Your table structure looks to be good to capture Volunteers and Donations. You could use this sort of structure to capture many Volunteers, and multiple Donations per Volunteer.

What do you mean by "business rules"?  If you're asking how to implement the list of items you have above, then please explain to us how you think you should do this? For example, how would you record the number of Calls a volunteer makes (hint: A "Call" is not a "Donation" - it's a possible Donation).
Avatar of Co-Rose

ASKER

yes, this is a part of my assignment task. but i didn't get much information from the scenario to create a database. in this case, im confused to design the rest of the database with calls and time of work.
ASKER CERTIFIED SOLUTION
Avatar of Scott McDaniel (EE MVE )
Scott McDaniel (EE MVE )
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
To follow up on what LSM posted:

Can one donation be handled by more than 1 volunteer?
If not, then your third table may not be needed...
..then you would just have to insert Volunteer ID into the Donations table.

I can also see the need for a Child "Hours" table, to track the time a volunteer spends on something...
...and a "calls" Child table to track the calls.


...but as LSM mentioned you need to gather more info, and narrow the focus of this question
But again, we can't really give you an etched in stone recommendations on the "Database design", because an Access db consists of not just tables, ...but also queries ("totaled by the hour", "how many calls each volunteer makes each hour on a particular day",..etc)  ..., forms and reports...

JeffCoachman
Avatar of Co-Rose

ASKER

Thank for your advice