C#存储球员卡数据库设计

C# Storing player cards Database Design

我真的很难弄清楚如何在 SQL 数据库中存储每个玩家拥有的卡牌。到目前为止,我的投注想法是 table 有牌:

[id], [cardName]

并将其与这样的玩家联系起来:

[id], [playeName], [cardId], [quantity]

此设置允许我轻松地将新卡片添加到数据库(当新卡片可用时),只需将它们插入卡片 table。

不过我很担心玩家 table,因为它可以非常快地变得非常大(一套有大约 250 张牌)它看起来像这样:

1 Bravd fireball 4; 2 Bravd Soldier 2; 3 Bravd PoisonSword 1, 4 John Soldier 3;  .... etc

玩家最多允许 250 个条目。我真的很高兴有 1000 名玩家作为第一个里程碑,但这最多提供 250 * 1000 个可能的条目,而未来会有更多玩家或新集的数据库大小会大大增加

这个解决方案是否可以接受table或者有人可以推荐更好的解决方案吗?

您可以添加另一个 table 以减少玩家名称的重复数据:

card_table -> [card_id], [cardName]
player_table -> [player_id] , [playerName]  
player_card_table -> [player_id],[card_id],[qty]