Elo*_*fin 2 php mysql database-design symfony1
我正在研究用symfony为学校项目开发的浏览器游戏.
在我的架构中,我有一个表格播放器和一个表格清单(包含不同的项目),一对一的关系.
我不确定如何构建表库存.反思后,我发现有两种方法可以做到这一点:
1.
TABLE inventory
id
id_player
item1
item2
item3
...
Run Code Online (Sandbox Code Playgroud)
但是如果我想在游戏中添加一个项目,我必须在我的表中添加一个列,如果有很多项目,我会有很多列.
2.
TABLE inventory
id
id_player
item
quantity
Run Code Online (Sandbox Code Playgroud)
我认为这种方式更好,但记录数量会迅速增加,因为我按项目逐行排列.
还有其他更有效的方法吗?如果不是,两者中哪个更好?
第二种方法应该没问题,只要id_player上有索引即可.我不担心它的空间使用情况.如果每行占用25个字节,并且每个玩家有400种类型的项目,并且您有100万用户,那么这仍然只有10个演出.