F
FerryMary
Mr.Vinson, Your advice along with that of others sent me on a refresher
course in the Normalization of a database. (regarding my post-plea for help-
"Is Data Just Data?", in this discussion group) I had totally warped the
concept of the Second Normal Form.
Eliminate Redundant Data--I interpreted that as meaning not to have
duplicate entries of the same information PER record. So I have a few tables
that are setup poorly. But from what I gather now it means not to duplicate
information relative to the key(not the specific record, but the whole field.
ie. vessel=boat not vessel=M/V Goodship Lollipop)
Please glance over the following and give me a yea or nay if "By God I think
She's Got It" appliesI'll just use two examples, hoping if I get these
right I'll get it right on the others.
Now:
tblfleet
vesselID
Name
Description (this is color scheme/school logos-still unique)
Class-(the fleet only has 5 classes of vessels)
Route-(Multiple boats are assigned to 1 route)
VehicleCapacity(Most same Based Class vessels have similar VehCap)
PassengerCapacity(same as VehCap)
(I have some fields like basic vessel power and radio call signs that should
not be there-because info covered under equipment, ie. horsepower and
certifications ie. FCC issues certificate with CallSign as identifier)
*The rest of the table fields are unique*
Should Be:
tblFleet
VesselID
VesselName
Description
Length
NetWeight
Beam
CellPhone(this item not covered anywhere else & unique)
tblFleetClass
VesselID
Class
tblFleetRoute
VesselID
Route
tblFleetCap
VesselID
VehicleCapacity
PassengerCapacity(I'm pretty certain where any vessel has X vehicle capacity
it has Y Passenger Capacity, if not this means 2 tables instead of just this
one "tblFleetCap")
Example2 of What I Have:
tblJob
JobNumber
VesselID(fk)
FacilityID(fk)
StatusID(relative to 5 different JobType)-which makes my JobDetails table
too big?
InitiatedDate
EndDate
tblJobDetails
JobNumber(fk)
JobDetailsNumber(pk)
SystemInvolved
EquipmentID
Fields I need for all 5 JobTypes(they do not apply to all jobtype)
tblStatus
StatusID
StatusName
JobType
JobTypeDescription
I Should Have:
tblJobType
JobTypeID
Description
tblStatus
StatusID
StatusName
tblStatusByJobType
JobTypeID
StatusID
tblJob
JobNumber
VesselID
FacilityID
InitiatedDate
StatusID (?)
tblJobDetails(JobType1)
JobNumber
JobType1ID
JobType1 Specific fields
tblJobDetails(JobType2
JobNumber
JobType2ID
JobType2 Specific fields ...and so on
Any input is greatly appreciated.
Mary
course in the Normalization of a database. (regarding my post-plea for help-
"Is Data Just Data?", in this discussion group) I had totally warped the
concept of the Second Normal Form.
Eliminate Redundant Data--I interpreted that as meaning not to have
duplicate entries of the same information PER record. So I have a few tables
that are setup poorly. But from what I gather now it means not to duplicate
information relative to the key(not the specific record, but the whole field.
ie. vessel=boat not vessel=M/V Goodship Lollipop)
Please glance over the following and give me a yea or nay if "By God I think
She's Got It" appliesI'll just use two examples, hoping if I get these
right I'll get it right on the others.
Now:
tblfleet
vesselID
Name
Description (this is color scheme/school logos-still unique)
Class-(the fleet only has 5 classes of vessels)
Route-(Multiple boats are assigned to 1 route)
VehicleCapacity(Most same Based Class vessels have similar VehCap)
PassengerCapacity(same as VehCap)
(I have some fields like basic vessel power and radio call signs that should
not be there-because info covered under equipment, ie. horsepower and
certifications ie. FCC issues certificate with CallSign as identifier)
*The rest of the table fields are unique*
Should Be:
tblFleet
VesselID
VesselName
Description
Length
NetWeight
Beam
CellPhone(this item not covered anywhere else & unique)
tblFleetClass
VesselID
Class
tblFleetRoute
VesselID
Route
tblFleetCap
VesselID
VehicleCapacity
PassengerCapacity(I'm pretty certain where any vessel has X vehicle capacity
it has Y Passenger Capacity, if not this means 2 tables instead of just this
one "tblFleetCap")
Example2 of What I Have:
tblJob
JobNumber
VesselID(fk)
FacilityID(fk)
StatusID(relative to 5 different JobType)-which makes my JobDetails table
too big?
InitiatedDate
EndDate
tblJobDetails
JobNumber(fk)
JobDetailsNumber(pk)
SystemInvolved
EquipmentID
Fields I need for all 5 JobTypes(they do not apply to all jobtype)
tblStatus
StatusID
StatusName
JobType
JobTypeDescription
I Should Have:
tblJobType
JobTypeID
Description
tblStatus
StatusID
StatusName
tblStatusByJobType
JobTypeID
StatusID
tblJob
JobNumber
VesselID
FacilityID
InitiatedDate
StatusID (?)
tblJobDetails(JobType1)
JobNumber
JobType1ID
JobType1 Specific fields
tblJobDetails(JobType2
JobNumber
JobType2ID
JobType2 Specific fields ...and so on
Any input is greatly appreciated.
Mary