0

这个问题在任何方面都不是新问题,但它有一个小转折。我的网页是用户下注的会员页面。我的想法是为用户创建一个新表(使用TABLE userBet+$userid 之类的命名约定)下注。已经处理了用户登录信息,我现在的目标是将用户的投注保存到新表中。用户注册时创建的表。这有望使计分变得更容易。我是对还是错?这可以以更好的方式完成吗?(一切都在 PHP MySQL 中完成)

用户注册 -> 创建投注表

"创建表 $userID ,id_bet, games, result, points"

然后将这个表与正确的结果进行匹配?

所以我的问题又来了:这是一个好方法吗?用 userID 创建一个表是一件聪明的事吗?

编辑

投注始终是 40 场比赛,这使得表格具有列和行。我应该制作 40 张桌子,每场比赛一张吗?并将所有用户放在那里?

4

2 回答 2

3

我是对还是错?

你错了。动态更改您的数据库架构只会使其更难使用。这样做没有任何好处。您可以通过将所有投注存储在同一个表中并添加一列来执行相同的操作userid

于 2013-08-16T08:33:54.603 回答
1

由于作者的要求,作为答案发布:)

建议的数据库架构:

matches

id |   name   |
---------------
 1 |   A vs B |

桌子user_bets

id | user_id | match_id | points | result |
-------------------------------------------
 1 |    X    |    1     |    Y   |   Z    |

其中 match_id 与matches.id

user_id = user.id

user_bets 只是一张表,包含所有信息。不需要单独的表,因为从评论中可以清楚地看出,通过用户输入更改数据库模式被认为是不好的做法。

于 2013-08-16T09:39:24.633 回答