M
mac
We need to set up a database to record the jobs we work on for our
clients and the names and addresses of the people/companies (clients,
contractors etc.) that work with us on these jobs.
Two people have come up with two different designs which I have tried
to illustrate below
The first (circular layout) I think is too complicated but it does give
a lot of scope for jobs to have many names and many addresses,
addresses to have many names and many jobs and names to have many
addresses and many jobs.
The second is simpler in my mind as I can relate this better to the
real world as jobs can have many companies and companies have people.
I would be grateful to receive comments from the Access experts here on
which one we should go for.
FIRST OPTION
------------
tblJobs
ID (PK)
JobNumber
JobName
JobDescription
etc...
tblJob-Names (Junction table)
ID (PK)
Job_Reference (ID From tblJobs)
Name_Reference (ID From tblNames)
tblNames
ID (PK)
Surname
Forename
Phone_Number
etc...
tblNames-Addresses (Junction table)
ID (PK)
Name_Reference (ID From tblNames)
Address_Reference (ID From tblAddresses)
tblAddresses
ID (PK)
Address_Line1
Address_Line2
Address_Line3
etc...
tblJobs-Addresses (Junction table)
ID (PK)
Address_Reference (ID From tblAddresses)
Job_Reference (ID From tblJobs)
SECOND OPTION
-------------
With this option company and job addresses would be stored in COMPANIES
and JOBS tables.
tblPeople
ID (PK)
Surname
Forename
Phone_Number
etc...
tblPeople-Company (Junction table)
ID (PK)
People_Reference (ID From tblPeople)
Company_Reference (ID From tblCompany)
tblCompany
ID (PK)
Company_Name
Address_Line1
Address_Line2
etc...
tblCompany-Jobs (Junction table)
ID (PK)
Company_Reference (ID From tblCompany)
Job_Reference (ID From tblJobs)
tblJobs
ID (PK)
JobNumber
JobName
JobDescription
etc...
clients and the names and addresses of the people/companies (clients,
contractors etc.) that work with us on these jobs.
Two people have come up with two different designs which I have tried
to illustrate below
The first (circular layout) I think is too complicated but it does give
a lot of scope for jobs to have many names and many addresses,
addresses to have many names and many jobs and names to have many
addresses and many jobs.
The second is simpler in my mind as I can relate this better to the
real world as jobs can have many companies and companies have people.
I would be grateful to receive comments from the Access experts here on
which one we should go for.
FIRST OPTION
------------
tblJobs
ID (PK)
JobNumber
JobName
JobDescription
etc...
tblJob-Names (Junction table)
ID (PK)
Job_Reference (ID From tblJobs)
Name_Reference (ID From tblNames)
tblNames
ID (PK)
Surname
Forename
Phone_Number
etc...
tblNames-Addresses (Junction table)
ID (PK)
Name_Reference (ID From tblNames)
Address_Reference (ID From tblAddresses)
tblAddresses
ID (PK)
Address_Line1
Address_Line2
Address_Line3
etc...
tblJobs-Addresses (Junction table)
ID (PK)
Address_Reference (ID From tblAddresses)
Job_Reference (ID From tblJobs)
SECOND OPTION
-------------
With this option company and job addresses would be stored in COMPANIES
and JOBS tables.
tblPeople
ID (PK)
Surname
Forename
Phone_Number
etc...
tblPeople-Company (Junction table)
ID (PK)
People_Reference (ID From tblPeople)
Company_Reference (ID From tblCompany)
tblCompany
ID (PK)
Company_Name
Address_Line1
Address_Line2
etc...
tblCompany-Jobs (Junction table)
ID (PK)
Company_Reference (ID From tblCompany)
Job_Reference (ID From tblJobs)
tblJobs
ID (PK)
JobNumber
JobName
JobDescription
etc...