Альтернатива “ведущему устройству” и “ведомому устройству” в связи сущностей?

Пример: у Меня есть две таблицы в моей базе данных, названной classA и classB и одной таблицей, названной classA_classB. Последний просто определил два международных поля с внешними ключами для соединения между classA и classB. Таким образом, один classA может иметь много classB, и много classA могут связаться с тем же classB. Простой материал, до сих пор.

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

Таким образом аналог технике выше, я имею: студент и student_student. student_student имеет два поля: student_id, student_id. Проблема: не Может иметь двух полей с тем же именем!

Таким образом, я должен назвать их как: master_student_id, slave_student_id.

Но мне не нравятся условия "Ведущее устройство" и "Ведомое устройство", потому что это напоминания к плохому времени в нашем прошлом. Это может звучать глупым, но я думаю, что это не корректно для хранения их, по крайней мере, с моральной точки зрения. Я знаю, что это - просто часть науки современного компьютера... но....

как еще я мог назвать их?

родитель и ребенок, возможно? Также я не уверен, существует ли действительно один объект "руководитель", в то время как другой "сотрудник"... Студент и Студент не являются иерархическими. Но затем, снова, позволяет, предполагают, что у нас было два класса "Учитель" и "Студент". Это было бы ясной иерархией. Однако мне нужно нейтральное решение, потому что моя платформа распараллеливает их 1:n отношения всегда тот же путь.

11
задан openfrog 6 January 2010 в 15:02
поделиться

5 ответов

[

] Родитель и ребенок или владелец и ребенок - общепринятые решения.[

]
7
ответ дан 3 December 2019 в 03:35
поделиться

related_id или associated_student_id было бы предпочтительнее.

2
ответ дан 3 December 2019 в 03:35
поделиться
[

] Как насчет student_id и friend_id? Нет правила, по которому иностранные ключи должны иметь те же имена столбцов, что и первичный ключ.[

].
3
ответ дан 3 December 2019 в 03:35
поделиться

Каковы роли двух учеников в отношениях? Друзья? Наставники? Знакомых? Они выполняют множество возможных ролей.

Вы можете придумать множество ролей с асимметричными названиями.

друг, друг_

наставник, наставник_б

реферер, привлеченный_б

1
ответ дан 3 December 2019 в 03:35
поделиться

Зависит от того, является ли отношение (назовем его R) симметричным. Если да, то person1, person2 в порядке, так как R(person1, person2) = R(person2, person1). Если они не симметричны, то эти имена, вероятно, должны отражать отношения "агент и пациент". Поэтому используйте слово для обозначения агента и слово для обозначения пациента, например, Befriender, Friend.

1
ответ дан 3 December 2019 в 03:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: