реляционная база данных и структура сети - PullRequest
0 голосов
/ 27 февраля 2009

Компания Microsoft может называться «microsoft», «ms» или «m $» и т. Д. Мы можем сказать, что эти имена являются псевдонимами одного идентификатора. Если вы хотите сохранить отношение «псевдоним», вам может потребоваться сделать это в виде следующих пар

microsoft      ms 

ms             microsoft

microsoft      m$

m$             microsoft

ms             m$

m$             ms

Или, может быть, есть лучший подход?

Ответы [ 2 ]

2 голосов
/ 27 февраля 2009

Конечно. Не храните таблицу, которая показывает кучу псевдонимов. Вместо этого каждой компании присваивается один идентификационный номер и используется вторичная таблица для предоставления псевдонимов:

Фирменный стол

CompanyID  PreferredNameID
12345      934

Таблица имен

CompanyID  NameID  Alias 
12345      934     Microsoft
12345      384     M$
12345      823     MS

Это дает вам возможность иметь столько псевдонимов, сколько необходимо, и когда вы будете составлять отчеты о компании, вы будете ссылаться на предпочтительное имя.

-Adam

1 голос
/ 27 февраля 2009

Вы можете сделать это с помощью схемы "TAG".

interest
--------
iPK
value

junction
---------
iPK
aPK

alias
-------
aPK
value
...