2010-07-12 3 views
0

Я действительно очень не могу об этом разузнать, я думал об этом целую вечность, но копейка не исчезнет. Я только начал изучать php и sql, поэтому для всех, которых я знаю, это, вероятно, очень просто. Я хочу создать футбольное приложение с лигами, светильниками и результатами для компьютерной игры в футбол, которую группа из нас играет в колледже. Идея такова:нужна помощь с моим дизайном базы данных

Пользователь может войти в систему. Управляйте командой, проверяйте приборы, обновляйте их результаты поиска, просматривайте результаты и проверяйте таблицу лиг.

Я могу сделать почти все это, за исключением светильников/результатов. Вот моя база данных до сих пор, для чего она стоит.

tblUsers ( идентификатор ПК, имя пользователя, пароль, team_id FK (ссылки на идентификатор tblTeams) )

tblTeams ( идентификатор PK, имя )

tblFixtures ( идентификатор, homeTeam, awayTeam )

Здесь я застрял. Если tblFixtures быть, как это вместо:

tblFixtures ( ID, ownteam, oppteam )

В конце концов, то, что я хочу, чтобы достичь является это. Пользователь входит в систему, проверяет устройство. Играет против соперника. Домашний игрок сообщает о матче, ставит в зачет, подает. Пропущенный игрок отправляет отчет, чтобы принять/отклонить. Затем это сохраняет базу данных, обновляет таблицу результатов и таблицу лиг. Im уверен, что я мог бы закодировать это в php im, просто не уверен, как я буду структурировать базу данных. Может ли кто-нибудь дать мне совет, чтобы понять, как это сделать? БЛАГОДАРЯ

+0

Есть ли разница между 'tblFixtures (id, homeTeam, awayTeam)' и 'tblFixtures (id, ownteam, oppteam)' - имеют ли имена столбцов разные значения? –

+0

Что вы подразумеваете под homeTeam? Вы имеете в виду команду в городе, в котором проходит матч, или вы имеете в виду команду, к которой принадлежит зарегистрированный пользователь? –

+0

@Will A, они работают одинаково, но то, что я подразумевал под ними, состоит в том, что я не думаю, что я смотрю на него должным образом. Когда я создаю базу данных, я должен думать, как если бы я пользователь или администратор собирал статистику? Если это имеет смысл? @Dave homeTeam означает домашнее место футбольной команды. – Jonathan

ответ

1

Jonny, я думаю, я бы подойти к этому с "игры" стол, который включает в себя следующие поля:

Настольные игры: идентификаторов (рк, INT, автоинкрементным) homeTeamId (интермедиат) awayTeamId (интермедиат) homeTeamScore (целое) awayTeamScore (интермедиат) одобрил (перечисление Y/N)

Итак, игра вводится сначала с домом/прочь ID команды. Теперь система знает, что есть игра для отображения предстоящих (возможно, добавление даты/времени/поля/и т. Д.) Если оценка не установлена, система знает, что игра еще не состоялась (или использовать дату, как описано ранее). , добавляет счет, системный адрес электронной почты для утверждения. После утверждения утвержденное поле обновляется до Y, и процесс завершается.

+0

Ах, хорошо, мне это нравится. Две птицы с одним камнем. Имеет смысл. Просто, чтобы прояснить что-то, вы говорите, что поставили homeTeamId и awayTeamId как INT. Означает ли это, что мне нужно создать отношения с team_id? Или это не нужно? Я также думая, используя INT, сделает кодирование проще, особенно с javascript? – Jonathan

+0

Я парень mysql, не знаю, в какой системе вы работаете ... работая в магазинах, которые запускают сервер Oracle и Sql, я знаю, что могут быть разные способы определения отношений. При этом я бы действительно использовал id от tblTeams .... в моей ситуации я бы просто ссылался на значения посредством операторов соединения, когда мне нужен доступ к этой информации. В качестве простого примера мне, вероятно, не нужно будет знать имена команд, чтобы установить флаг утверждения, поэтому в этом действии не было бы никакого объединения. Чем больше я кодирую, тем больше осознаю, насколько важно сохранять вещи просто ... – bpeterson76

Смежные вопросы