【发布时间】:2017-07-13 20:03:24
【问题描述】:
我正在做一个纸牌游戏的幻想联盟网站,需要一些设计实施建议和一些疑问。
简要介绍一下,每周都会有玩家、卡片和锦标赛。
用户可以选择 x 卡和 x 玩家,并在每次锦标赛后根据所选卡/玩家结果获得积分。每个用户都可以在活动开始前的 y 时间更改他的玩家/卡片。
a) 锦标赛(结果)表对于玩家结果来说似乎很简单,但对于卡片,我需要另一个表或将所有表放在相同的位置,增加行数和空行数?
有了这个,我在这个表格中思考:
CREATE TABLE results
(`tournament` varchar(255) , `date` date, `place` varchar(255), `type` varchar(255), `format` varchar(255), `season` int , `player` varchar(255), `country` varchar(255), `standing` int)
;
INSERT INTO results
(`tournament`, `date`, `place`, `type`, `format`, `season`, `player`, `country`, `standing`)
VALUES
("Poker star","2018-01-15","Berlin","free for all","holdem","1","Michael","US",1)
;
CREATE TABLE user
(`player` varchar(255), `id` int, `country` varchar(255), `tournament` varchar(255) , `date` date, `place` varchar(255), `season` int,`added`)
;
INSERT INTO user
VALUES
("Michael",1,"US","Poker star","2018-01-15","Berlin",1,"2017-06-13")
;
现在要添加卡片选择,我应该添加行卡 varchar、数量以及何时使用的 put 值,否则为 NULL?这是做数据库的好方法吗?在未使用的行中添加 NULL 列?
有这么多空列对我来说似乎很尴尬。
现在要为用户获得积分,我应该做一个视图吗?有没有办法在 x 日期过去后触发和更新视图? (自动更新统计数据)。
【问题讨论】:
-
那么作为用户,我会选择红桃 A 作为我的卡片吗?
-
@bones 是的,还有数量。