User Name Password Register
DaniWeb IT Discussion Community
All
What is DaniWeb IT Discussion Community?
You're currently browsing the Database Design section within the Web Development category of DaniWeb, a massive community of 426,636 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 1,573 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Database Design advertiser: Programming Forums

Please Review My Database Design

Join Date: Jan 2007
Location: Austin, TX
Posts: 30
Reputation: Memento is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
Memento Memento is offline Offline
Light Poster

Re: Please Review My Database Design

  #2  
Mar 22nd, 2007
That schema shows more planning and thought then many corporate systems I have inherited.
  • Merge sd_leaders, sd_volunteers, sd_contacts, and sd_pastors together.
    • If needed, you can add one or more columns to this table to designate some special status, however,
    • You can determine their role(s) by whether sd_church_has_sd_pastors, sd_contacts_has_sd_worksite, sd_volunteers_has_sd_project, and/or sd_leaders_has_sd_project link to them
  • Possibly add another table between sd_church and sd_volunteers so that the member can volunteer on projects not directly managed by his church (this is similar to what you did with the pastors). I think this would come in handy if a volunteer is referred by one church to another church's project.
  • Adding start and end dates to the tables that maintain your people relationships (sd_church_has_sd_pastors, sd_contacts_has_sd_worksite, sd_volunteers_has_sd_project, and sd_leaders_has_sd_project) because people and pastors switch churches, leaders step down or get replaced, and contacts change. To maintain historical integrity, you cannot just change the relationship, you must end date it and then add a new one.
  • Allow room for the full address on sd_worksite, sd_leaders, sd_volunteers, sd_contacts, and sd_pastors. I have seen systems where they store address on another table so that you can keep a history. This can also be used to store multiple addresses for someone.
  • On sd_worksite, perhaps include room for notes (like driving directions)
Good luck!
Dan Moore
www.danmoore.org
Reply With Quote  
All times are GMT -4. The time now is 12:47 am.
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC