Re: ER design problem

From: mAsterdam <mAsterdam_at_vrijdag.org>
Date: Thu, 09 Feb 2006 09:38:27 +0100
Message-ID: <43eaff78$0$11066$e4fe514c_at_news.xs4all.nl>


garhone wrote:
> I'm trying to design a database and am having trouble with ER diagrams.
> The database will track record-of-calls.

Some say a database is a collection of facts. When designing a database you have to carefully consider what type of facts are are you going to collect. A record-of-call - what exactly is that? What meaning should it carry?

Another consideration is: which information am I going to need out of this collection, in casu what do I need to know about the projects and the calls?

> Calls are made on a daily basis.
> Each record-of-call corresponds to one project.

Do you mean that every project calls once a day or that every call is about a new project?

> A different project may have unique attributes.
> For example,
> project A has attributes projectID, region, customer_name
> project B has attributes projectID, budget, region
> project C has attributes projectID, business_type, number_of_deals
> project D has attributes projectID, customer_name, business_type,
> language
> etc.

Hmm. Strange. Project A has NO business_type, project C has NO region.

> So, each call associated with project A must contain region,
> customer_name and projectID data.

Why? Can/should a current call associated with project A contain another region than a previous call? Again: what does it mean?

>
> Right now, the number of projects is stable (no increase or decrease in
> number of projects).
> But, in the future, new projects may be added, although infrequently.
>
> One suggestion was to have a Record_of_Calls Entity, a Projects Entity
> and a separate Project-Record_of_Calls entity for each project, because
> of different types and different number of attributes for each project.
> (i.e. a ProjectA-Record_of_Calls entity, ProjectB-Record_of_Calls
> entity, etc.)
> Because with a single Project-Record_of_Calls entity, if a Project X
> has a unique attribute Y, not found in any other project,
> then, all other projects would have empty values for attribute Y (waste
> of space).
>
> I am unsure that this is the best course of action.
>
> Does anyone have any other suggestions?
> Or perhaps some online resources to provide me with some guidance?
>
> Thanks
>
Received on Thu Feb 09 2006 - 09:38:27 CET

Original text of this message