Normalization depends on how the data will be used. For instance in the contacts database you want to enter a name only once. What you have looks fine but it makes an assumption: Each address has only one contact and each contact only one address.
I'm not sure why you want City, State and Zip in other tables. Granted, there are programmitic advantages to doing this, like being able to present a list of cities/states for an entered zip code. If your users will just read or data entry is not important then normalizing those values can be a pain and I think it's overkill. Note: If you want to limit the users to entering valid state codes (a list which hasn't changed in 15 years), just code that into Code Charges validation routine or use a list box with a hard coded list. Glenn "Russell Griechen" <[EMAIL PROTECTED]> wrote in message 011001c1d52f$82231140$b4601442@oemcomputer">news:011001c1d52f$82231140$b4601442@oemcomputer... > I am contemplating a Historical Database > I barely can spel redundant let alone normalize so I am handicapped. > The aim is to enter a name only once. I am studying linking tables. > In the [Contact] > idContact > First_Name,Last_Name,Middle,Suffix,Full_Name,idCity,idState,City_State,i > dZip_Code, > Address_1,Address_2, > > [City] > id > Cityname > > id (al, ar etc) > Statename > > [ZipCode] > id > Zip_Code > > Comment please, > Russell Griechen > -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php