2017-07-13 105 views
0

我做了夢幻聯賽網站紙牌遊戲,並需要在一些設計實施的建議和一些疑慮。表幻想聯賽和設計實施

快速背景下,會有球員,卡片和比賽周。

用戶將不得不選擇X卡和X的球員選項,每場比賽後,根據所選擇的卡片機/播放效果獲得積分。每個用戶都可以在活動開始之前更換他的玩家/卡片。

一)比賽(結果)表似乎相當直截了當玩家的結果,但對於卡,我需要另一個表或把所有在同一增加線路和空行的數目?

有了這個,我在這個表想:

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,數量,當其用於放值,否則爲NULL?這是做數據庫的好方法嗎?在未使用的行中添加NULL的列?

有這麼多的空列似乎尷尬的我。

我們獲得積分的用戶,我應該做一個看法?在x日期過後,有沒有辦法在視圖上觸發和更新? (自動更新統計)。

+0

所以作爲一個用戶,我會選擇心中的王牌作爲我的卡,例如? – bones

+0

@bones是和數量。 –

回答

1

我會做這樣的事情:

player_cards 
------------- 
id bigint autoincrement 
player_id 
tournament_id 
card_id 
card_qty 

如果你不接每一場比賽,你可以跳過tournament_id領域,但也不可能知道他們有一個特定的比賽哪張牌。