2010-07-12 66 views
0

我真的不能让我的头在这附近,我已经想了很久,但便士不会放弃。我刚开始学习php和sql,所以我知道它可能非常简单。我想创建一个足球应用程序,其中包含联赛,装置和结果,用于一群我们在大学里玩的pc足球比赛。想法是这样的,需要帮助,我的数据库设计

用户可以登录。管理团队,检查装置,更新他们的比赛结果,查看结果和检查联赛表。

我几乎可以做所有这些,除了灯具/结果。这是我的数据库到目前为止,它的价值。

向tblUsers( ID PK, 用户名, 密码, TEAM_ID FK(参考tblTeams的ID) )

tblTeams( ID PK, 名 )

tblFixtures( ID, homeTeam, awayTeam )

这是我卡住的地方。应该tblFixtures是这样,而不是:

tblFixtures( ID, ownteam, oppteam )

最后,我想达到什么是这样的。用户登录,检查夹具。反对对手。主场球员报告比赛,投入比分,提交。离开的玩家获得报告以接受/拒绝。然后保存到数据库,更新结果表和联盟表。林肯定我可以在PHP编码这只是不知道我会如何构建数据库。任何人都可以给我建议,了解如何做到这一点?感谢

+0

'tblFixtures(id,homeTeam,awayTeam)'和'tblFixtures(id,ownteam,oppteam)'有区别吗? – 2010-07-12 22:56:25

+0

homeTeam是什么意思?你的意思是谁在城市比赛发生的队伍或你是指队伍,登录的用户属于? – 2010-07-12 22:59:03

+0

@会A,他们的工作原理是一样的,但我的意思是他们都是我不认为我正确地看着它。当我创建一个数据库时,我应该像在用户或管理员收集统计信息时一样思考?如果这有道理? @Dave homeTeam意味着足球队的主场。 – Jonathan 2010-07-12 23:02:49

回答

1

强尼,我想我会用一个 “游戏” 表,其中包括以下字段接近这个:

表游戏: ID(PK,INT,自动递增) homeTeamId(INT) awayTeamId(INT) homeTeamScore(INT) awayTeamScore(INT) 批准(枚举Y/N)

所以,游戏最初进入与家庭/客队ID。现在,系统知道有一个游戏可以显示即将到来的(可能添加日期/时间/字段/等)如果未设置分数,系统知道游戏还没有发生(或使用前面描述的日期)主队登录,增加分数,系统自动发送电子邮件对手进行审批。批准后,批准的字段将更新为Y,并且过程已完成。

+0

很好,我喜欢。一石二鸟。感谢你。 只是为了澄清一些事情,你说把家里的队员和队员都放在家里,就像INT一样。这是否意味着我需要与team_id建立关系?或者是不需要的?我也想使用INT的会使编码更容易,特别是与JavaScript? – Jonathan 2010-07-12 23:08:21

+0

我是一名mysql人员,不确定你在做什么系统......曾在运行Oracle和Sql服务器的商店工作过,我知道可以有不同的定义关系的方式。话虽如此,我确实会使用tblTeams中的id ....在我的情况下,当我需要访问该信息时,我只需通过join语句引用值。举一个简单的例子,我可能不需要知道团队名称来设置批准标志,因此在该操作中不需要连接。我的代码越多,我越意识到让事情变得简单是多么重要.... – bpeterson76 2010-07-13 02:37:27