В реляционной модели отношения (корабль) s / ассоциаций представлены в виде таблиц. Ограничения FK (внешний ключ) не являются отношениями, хотя их ошибочно называют. Они являются ограничениями и не должны быть объявлены, известны или существуют для запроса. Ограничение FK гласит, что значения появляются в другом месте один раз. Или, эквивалентно, то, что ценности / сущности, участвующие вместе в определенных отношениях, участвуют вместе в определенных других отношениях один раз. «Родитель» по сравнению с «дочерним» применяется к любым древовидным или другим иерархически структурированным отношениям, а «прямой» и «обратный» являются обобщенными терминами c, применимыми к любому направлению любых направленных двоичных отношений, включая мета-отношения в таблицах. "имеет FK, который ссылается" или "появляется один раз в". (Хотя на самом деле это не то, как назывались ФК "отношениями".)
Есть только общие соглашения ... в том числе и для "деревьев" ... забавно, деревья вне go выше root не вниз Падение деревьев информатики - это просто еще одно соглашение ... для западных людей, пишущих сверху вниз, туда, где больше места. Хотя для некоторых соглашений могли быть особые причины, нет смысла беспокоиться о том, чтобы они имели смысл или были в согласии.
Мы говорим, что FK ссылается на PK, поэтому чтение слева направо, как в Engli sh, мы могли бы называть это "вперед". ФК могут образовывать циклы реляционно, но СУБД SQL имеют тенденцию ограничивать объявления деревьями, потому что они перегружают их каскадной функциональностью и не пытаются допустить даг или циклы. Таким образом, в SQL на родителя ссылаются, а на ребенка ссылаются. Но SQL FK не являются аналогами реляционных FK; они являются аналогами того, что мы можем назвать реляционными иностранными суперключами. Таким образом, перегружен "FK".
Нет оснований ожидать согласованности. Французский тост не тост. Отношения не являются отношениями.
Не используйте эти обобщенные c термины. Вместо этого четко определите отношения (корабли), о которых вы говорите, называя и / или упорядочение их параметров и правильное использование технических терминов, таких как «ссылка» и «ссылка». Нужно ли говорить, что вы должны запомнить определения технических терминов ? Или для обобщенных c терминов, в соответствии с этим, определите, что конкретно означает c, что означает, что вы собираетесь использовать для обобщенных c терминов в каждом конкретном c контексте. (Но вы просто просите о недопонимании.)
Разве не правильно говорить о таблицах Parent-Child в дизайне базы данных?