В базе данных, как можно уменьшить избыточность? - PullRequest
0 голосов
/ 16 декабря 2010

У меня есть один стол

Table 
Email_Address
Name
contact_No
city
Pincode
state
country

Я разделил на две части

Table1
Email_Address(PK)
Name
contact_No
city

table2    
city
Pincode
state
country

как мне поддерживать связь между этой таблицей.

1 Ответ

1 голос
/ 16 декабря 2010

City будет первичным ключом из table2 и внешним ключом в Table1. (Но для этого необходимо, чтобы названия городов были глобально уникальными и имели только один пин-код).

Вы должны быть уверены, что один city имеет только один Pincode. Если это не так, вероятно, используйте Pincode в качестве первичного / внешнего ключа вместо city.

Обновление: Поскольку, по-видимому, существуют случаи, когда некоторые пин-коды охватывают несколько городов, вам, вероятно, придется жить с избыточностью или вводить искусственный ключ. Также смотрите ссылки на подобные вопросы здесь в комментариях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...