2016-05-24 2 views
0

Скажем, у меня есть две таблицы table_A и table_B с отношением «многие ко многим», использующие таблицу соединений A_join_B. В A_join_B есть, конечно, два столбца, внешние ключи для table_A и table_B соответственно.Собственное имя для столбцов в таблице соединений

С точки зрения таблицы_А первый столбец в A_join_B является ключом к себе, а второй столбец является ключом к другой таблице. Значение меняется с точки зрения таблицы_B.

Мой вопрос: есть ли соответствующее имя для этих «я» и «других» ключей?

Я использую имена дома ключ и прочь ключевые в последнее время, так что с точки зрения TABLE_A первый столбец в A_join_B является ключом дом и второй столбец является ключом прочь. Я не думаю, что это условно, и я не могу найти что-либо в Google.

Или, как и имя самой таблицы соединения (таблица соединений, таблица ассоциаций, таблица ссылок и т. Д. И т. Д.), Нет ли приемлемой стандартной терминологии для этого?

ответ

0

Существует несколько дисциплин, которые рассматривают базы данных по-разному. Реляционная модель данных, модель сущностных отношений, модель сетевых данных, моделирование объектно-ролевых моделей и моделирование размеров - всего лишь несколько из наиболее известных перспектив. У каждой из них есть своя терминология. Дальнейшие запутывающие вопросы - это большое количество неофициальной терминологии, не говоря уже о заблуждениях, которые пронизывают поле.

В реляционной модели EF Codd вводит термин «внешний ключ»: «Мы будем называть домен (или комбинацию доменов) отношения R внешним ключом, если он не является первичным ключом R, но его элементы являются значениями первичный ключ некоторого отношения S (исключается возможность того, что S и R идентичны). "

Таким образом, в вашем примере A_join_B состоит из двух внешних ключей, которые вместе составляют первичный ключ этой таблицы. Реляционная модель не берет перспективу из той или иной таблицы. Он также не различает таблицы соединений - каждая таблица является отношением между наборами значений.

Беспорядок различных подходов к моделированию данных в поле делает вещи запутанными. Я рекомендую вам брать одну модель за раз и тщательно ее изучать, возвращаясь к академическим корням дисциплины. Codd's A relational model of data for large shared data banks и Chen's The entity-relationship model - toward a unified view of data - две важные статьи в истории моделирования данных. Их нетрудно прочитать - короче книг, более строгих, чем блоги, и более образовательны, чем документация по продуктам.

Смежные вопросы