MySQL хранилище данных «один ко многим» - PullRequest
0 голосов
/ 12 января 2012

Я только недавно узнал о концепции «один ко многим», поэтому извините, если это немного расплывчато или вне контекста как такового.

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

В настоящее время я представляю одну таблицу, в которой я храню идентификатор участника и отправляю (с любымдругие связанные данные, такие как метки времени и т. д.).Еще одна таблица, где у меня есть ассоциации друзей между двумя друзьями, и третья таблица, в которой хранится что-то еще, чтобы я мог использовать ее в качестве перекрестной ссылки.Но я не знаю, правильно ли я думаю об этом.Как я уже сказал, я новичок в этой идее;Я не могу представить это полностью.Так есть ли у кого-нибудь предложения, как построить эти таблицы?Не очень, чтобы выяснить, как запросить их в настоящее время.Просто попытка понять, как правильно использовать концепцию «один ко многим», и все прочитанные мною по этой теме действительно не дали мне много работы в виде примеров, даже относительно близких к тому, что я хочуделаем.

1 Ответ

1 голос
/ 12 января 2012

Вам понадобится одна таблица для членов

Участники (memberId, MemberName, DateJoined и т. Д.)

Одна для сообщений с внешним ключом для членов

Post (PostId,MemberId, PostDate и т. Д.)

Тот, для которого следует, кто

Подписан (FollowerId, FollowedId), где оба являются внешними ключами таблицы членов

...