View Single Post
  #3  
Old January 28th, 2010, 07:32 PM posted to microsoft.public.access.tablesdbdesign
Steve[_77_]
external usenet poster
 
Posts: 1,017
Default Creating Relationships between tables

I recommend that the primarry key of 99.99% of tables be the table name with
"ID" at the end. Make the primary key autonumber. Do this and you will never
go wrong! So in your case the primary key of your incident table would be
IncidentID and the primary key of your establishment table would be
EstablishmentID. Further, It is likely that a criminal will over time be
involved in more than one incident. So I recommend that you also have a
criminal table. This will allow you to easy create a rap sheet any time for
a particular criminal. I don't know what your Area field is but most likely
you also nee an Area table.Finally it is recommended practice not to use
spaces in any Access object names (tables, fields, queries, forms reports,
etc). So now your tables should look like:
TblCriminal
CriminalID
FirstName
LastName
criminal fields

TblArea
AreaID
area fields

TblEstablishment
EstablishmentID
EstablishmentName
EstablishmentAddress
EstablishmentCity
EstablishmentState
EstablishmentZipcode
AreaID

Tbl Incident
IncidentID
DateofOffense
TimeofOffense
CriminalID
EstablishmentID

Note that I did not include day of week. Day of week can be easily
calculated from DateOfOffense.

Post back if you have any questions.

Steve






"Lee Ann" wrote in message
...
I've searched through these forums and read alot of discussions regarding
not
using a lookup in a table. Instead, one should put that information in
another table and then use a combo box (using the wizard) to create that
field.

I'm getting confused trying to figure out a few things with this method
and
I'm hoping for some direction.

My database will be used to capture enforcement information regarding a
particular crime in my area. This crime involved establishments, the
criminals and certain information related to the criminals. Rather than
lay
out all of the specifics, if I can figure out how to relate two of the
tables
together, I should be fine. So, I would assume I need a table for the
basic
information:

Tbl Incident
Date of Offense
Time of Offense
Day of Week
Establishment Name
Subject Name

Since I will be dealing with several establishments, I'm assuming I'd want
this in a seperate table. I'd also want to include an address and a
specific
area for this:

Tbl Establishment
Establishment Name
Establishment Address
Establish Area

I know I should be connecting the Tbl Establishment with the Tbl Incident
and there should be like titles in both of the tables on which to match.
I've looked at databases created by those with alot of knowledge in Access
and I notice there's usually an ID field in each table
(EstablishmentNameID -
for instance). This is where the confusion is coming in: Should
EstablishmentNameID be the primary key in this table as opposed to ID with
autonumber? If it's not the primary key, I get an error message that
there's
no unique index between the two.

Second point of confusion, assume the Establishment table merely contained
the name of the establishment. By using the wizard, I put a combo box on
the
form to capture just the name and then tell it to store the establishment
name in the Incident table (under Establishment Name) and that works fine.
However, we have many of the same establishment names with different
addresses and I need the address and areas included. I'm assuming the
combo
box is the wrong choice with this, as it only allows me to store the
information from 1 field in my Incident table.

I apologize for the lengthy post and I appreciate any assistance I can
get.
Thanks in advance.