In the past month I have bought and read to my dismay 3 books gone to 5 or so
web pages and finally endedup here.
Well, maybe they were the wrong books, or you were jumping in to form
design without getting the basics of table design first. You're
designing spreadsheets, not tables! Tables grow DOWN, not ACROSS. See
below for examples.
The data base I am making is a comprehensive individual/personnel one to be
used at my command. It will have alot of feild because in the Navy you don't
just do one thing. example- qualifications - at current command there are
watch station quals-10, firefighting quals- 13, safety quals-4, 3-M
quals-5possible, equiptment quals-10, (in differnt shops it varies), gun
quals-4, various (planner, plant quals etc-10) ok thats just the quals they
need a yes/no field and a date qualified field. Just Quals aprox 70 fields.
No. It's THREE TABLES.
Personnel
ID <the person's unique military ID>
LastName
FirstName
Rank
<etc>
Qualifications
QualID
QualificationType <e.g. "firefighting">
Qualificaition <e.g. "SCOBA">
PersonnelQualifications
ID <who got the qualification>
QualID <which of the 70 or so qualifications they got>
QualDate <when they got it>
<other fields about this sailor's performance on this particular
qualification>
If a sailor qualifies on 36 qualifications, they would have 36 records
in PersonnelQualifications.
Now with education fields, previous and in Navy educations aprox 100 fields
for schools and scores,thats just two areas. We also have recall information
address, phone basic stuff then TAD assignments, Leave tracking shop manning
and ll of this information will be used in many reports.
Similar. If you have one (sailor) to many (scores), you need a Scores
table with *multiple records per sailor* rather than a wide flat table
with a different *field* for each score.
I can build tables
and I can Layout forms for entering the data in, not a problem. The only
thing Im trying to do because there are so many forms because of size limit
is coralate the forms from each section, so when I enter the name rate rank
ssn (basic Identity) into the first form that it automatically fills in the
feild in the same record of every form, so when the person entering data
opens any form to update data the can go right to that persons record and
they know for sure where to enter stuff.
If you have a Form based on Personnel with Subforms based on these
multiple related tables, Access *takes care of that for you*. You do
NOT need to, or want to, store the personnel data in multiple tables;
you do NOT want to copy that data into ANY other table, and you do not
need to create a different main form for every different category of
data.
Or should I be using the tables to enter all of my data in but that seems to
defeat the purpose of a GUI based data base. I Hope this clears up what I am
trying to do.
You *will* be entering data into tables - tables are the only place
Access actually stores data - but you should *never* need to see a
table datasheet when you're actually using the database. Forms are
your interface to the tables; and the tools that Forms provide -
subforms, combo boxes, listboxes, etc. - make that process easier.
It appears that you have made the very common mistake of letting the
Forms, or the Reports, drive your table design. It's easy to do,
especially if you've worked with spreadsheets! But in a relational
database IT IS SIMPLY WRONG, and will get you into all of the hassles
that you're currently experiencing. Get your books back out, and look
in the Index for the terms "Normalization" or "Table design" - they
should cover the subject in an early chapter (and if they don't, burn
the book <g>). The foundation of any database is its table structure;
Forms and Reports are added later. If you're building a ship, you want
to be sure that the hull is designed right before you start adding
decks and masts!
John W. Vinson[MVP]