Я создаю базу данных и имею следующую структуру:Еще один вопрос с дизайном базы данных
Является игровой базой данных, и у меня будут пользователи, игры и группы.
A game will have 1 owner (an user). In other words a game will be created by an user.
A game will have 1..n groups.
A group will have 1 owner (an user). In other words a group will be created by an user.
A group will have 1..n users.
A user will belong to a group. The user can't belong to more that ONE group.
A user will belong to a game. The user can't belong to more than ONE game.
Я не знаю, как узнать, какой пользователь создал игру. Я думал в двух вариантах:
- Добавить внешний ключ из игрового стола в таблицу .
- добавить столбец в таблицу пользователя, называемый gameOwner, и установить его в true, если пользователь создал игру.
Вот мои таблицы:
User
--------------------------------------
Id | PK
Name | User name (not null)
GroupOwner | Bool type. True if user has created a group.
GroupId | FK to group table. Can be null: user is not playing any game now.
Group
--------------------------------------
Id | PK
Name | Group name (not null)
GameId | FK to game table. Group belongs to this game.
Game
--------------------------------------
Id | PK
Name | Game name (not null).
Как я могу представить, что пользователь создал игру?
UPDATE
Игра всегда нужен хозяин.
Владелец игры всегда будет таким же.
Когда игра закончена, ее можно удалить.
Q1: Будет ли владелец игра, всегда будет то же самое? например что происходит со временем? Q2: Требуется ли владельцам игра, чтобы существовать, т.е. игра ВСЕГДА должна иметь владельца? – trickwallett
Я обновил свой вопрос более подробно (и ваши ответы). – VansFannel