Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

nick9191

macrumors 68040
Original poster
Feb 17, 2008
3,407
316
Britain
Hi, could anyone just briefly glance over the attached ER diagram and mention if there are any glaring holes? Relationships, etc.

Thanks in advance.
 

Attachments

  • Untitled.png
    Untitled.png
    80.1 KB · Views: 354
I would flatten it out some more.

For example you have 4 tables devoted to storing information about people: resstaff, student, adviser, and next of kin. I would create one table for people, and use role definitions to type the person. If one person can have multiple roles, then you would need to store that information in an associative entity table to resolve the many to one relationships. You also have address information stored in multiple places: hall, resstaff, flat, student, leases, and next of kin. Create a single address table and have the other tables reference it as required. That way you only need to write one chunk of code to maintain address information and not one chunk for each table. Finally, your invoice design limits an invoice to having one line item. Most invoice structures use a master-detail pattern where one invoice header can have many detail lines.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.