До сих пор у меня есть четыре стола. Они называются:
пользователь, банда, gang_business, gang_members, gang_weapons
Я пытаюсь выяснить, следует ли использовать первичный ключ таблицы "пользователь" или "банда" в качестве внешних ключей для таблицы "gang_business", "gang_members" и "gang_weapons". Таблица "банда" имеет первичный ключ пользователя в качестве внешнего ключа. Я пытаюсь выяснить, какой из них лучше всего подходит. Пожалуйста, дайте мне ваш лучший совет и отзывы. Благодарю.
Это зависит от отношений внутри пользователей и таблиц банд.
Я бы сделал это с помощью этих таблиц:
user: (id, имя, адрес электронной почты, пароль)
банда: (id, имя, цвет, идология)
gang_members: (user_id, gang_id)
user_weapons: (user_id, weapon_id)
gang_business: (gang_id, business_id)
оружие: (id, имя,...)
бизнес: (id, имя,...)
Я бы только префикс столбцов, когда они являются внешними ключами.
Я полагаю, что оружие принадлежит пользователям, а бизнес принадлежит бандам.
Если только gang-sters могут быть членами gang_business и gang_members, тогда вы должны использовать PK таблицы банды. Вы не должны использовать пользовательский ПК, потому что это супергруппа, из которых таблица банда является подгруппой.