L
laskowv
I need help with this design issue. My goal is to try to have the database
size as minimal as possible. This is a simple example for what I need. I
need to have a way to enter 10 officers positions for a Company, its
Divisions and its Stores.
There will be 178 terms of office (1921-2099). I will need 10 officer
positions posted to each term for the Company, each of the 52 Divisions, and
then the multiple stores under each Division. Depending on the design, the
Company could either produce 1,780 records or 178 records.
Example A: the 1,780 records, (10 officers x 178 terms), design that table
would look like:
CompanyOfficers (table)
COID (PK)
TermID (FK)
OfficerID (FK)
EmployeeID (FK)
Example B: the 178 records, (10 officers all in one record), the table would
look something like:
CompanyOfficers (table)
COID (PK)
TermID (FK)
Officer1ID (FK) (which would really be the EmployeeID)
Officer2ID (FK) (which would really be the EmployeeID)
Officer3ID (FK) (which would really be the EmployeeID)
Officer3ID (FK) (which would really be the EmployeeID)
Officer4ID (FK) (which would really be the EmployeeID)
Officer5ID (FK) (which would really be the EmployeeID)
Officer6ID (FK) (which would really be the EmployeeID)
Officer7ID (FK) (which would really be the EmployeeID)
Officer8ID (FK) (which would really be the EmployeeID)
Officer9ID (FK) (which would really be the EmployeeID)
Officer10ID (FK) (which would really be the EmployeeID)
The Example B works fine in the screen maintenance and entry. The problem
I'm having is creating subform on the Employee form that lists every "office"
which that employee is held. The "JOINS" are not working out.
Example A is the most correct design, but the problem exists when creating
these for the 52 Divisions and hundreds of Stores in each Division. The
Divisions alone under Example A would generate 92,560 records (52 divisions x
10 officers x 178 terms).
There are currently 467 Stores, hence Example A would now generate 831,260
records (467 x 10 officers x 178 terms); and Example B would generate 83,126
records (467 x 10 officers all in one table)
How would any of you resolve this "design issue"? I really welcome your
thoughts. Obviously, Example B would be preferred, but I don't know how to
make the multiple "self-joins" -- I think that's what they are called.
Please, I call upon all of the ACCESS EXPERTS to help.
Thank you for your time.
size as minimal as possible. This is a simple example for what I need. I
need to have a way to enter 10 officers positions for a Company, its
Divisions and its Stores.
There will be 178 terms of office (1921-2099). I will need 10 officer
positions posted to each term for the Company, each of the 52 Divisions, and
then the multiple stores under each Division. Depending on the design, the
Company could either produce 1,780 records or 178 records.
Example A: the 1,780 records, (10 officers x 178 terms), design that table
would look like:
CompanyOfficers (table)
COID (PK)
TermID (FK)
OfficerID (FK)
EmployeeID (FK)
Example B: the 178 records, (10 officers all in one record), the table would
look something like:
CompanyOfficers (table)
COID (PK)
TermID (FK)
Officer1ID (FK) (which would really be the EmployeeID)
Officer2ID (FK) (which would really be the EmployeeID)
Officer3ID (FK) (which would really be the EmployeeID)
Officer3ID (FK) (which would really be the EmployeeID)
Officer4ID (FK) (which would really be the EmployeeID)
Officer5ID (FK) (which would really be the EmployeeID)
Officer6ID (FK) (which would really be the EmployeeID)
Officer7ID (FK) (which would really be the EmployeeID)
Officer8ID (FK) (which would really be the EmployeeID)
Officer9ID (FK) (which would really be the EmployeeID)
Officer10ID (FK) (which would really be the EmployeeID)
The Example B works fine in the screen maintenance and entry. The problem
I'm having is creating subform on the Employee form that lists every "office"
which that employee is held. The "JOINS" are not working out.
Example A is the most correct design, but the problem exists when creating
these for the 52 Divisions and hundreds of Stores in each Division. The
Divisions alone under Example A would generate 92,560 records (52 divisions x
10 officers x 178 terms).
There are currently 467 Stores, hence Example A would now generate 831,260
records (467 x 10 officers x 178 terms); and Example B would generate 83,126
records (467 x 10 officers all in one table)
How would any of you resolve this "design issue"? I really welcome your
thoughts. Obviously, Example B would be preferred, but I don't know how to
make the multiple "self-joins" -- I think that's what they are called.
Please, I call upon all of the ACCESS EXPERTS to help.
Thank you for your time.