繁体   English   中英

浏览器游戏的建模数据库

[英]Modeling database for a browser game

我为学校项目开发了一款使用 symfony 开发的浏览器游戏。

在我的模式中,我有一个表播放器和一个表库存(包含不同的项目),具有一对一的关系。

我不确定如何建立表格库存。 经过反思,我找到了两种方法:

1.

TABLE inventory
  id
  id_player
  item1
  item2
  item3
  ...

但是如果我想在游戏中添加一个项目,我必须在我的表中添加一个列,如果有很多项目,我就会有很多列。

2.

TABLE inventory
  id
  id_player
  item
  quantity

我认为这种方式更好,但是记录的数量会很快增加,因为我逐条播放。

还有其他更有效的方法吗? 如果不是,两者哪个更好?

第二种方法应该没问题,只要 id_player 上有索引。 我不会担心它的空间使用情况。 如果每行占用 25 个字节,每个播放器有 400 种类型的物品,而您有 100 万用户,那仍然只有 10 个演出。

要完成上述答案,您可以添加一个包含您的项目的表格,然后只需将您的项目列更改为id_item

TABLE player     
  id
  player_name
  ... player characteristics ...

TABLE inventory
  id
  id_player
  id_item
  quantity

TABLE item
  id
  item_name
  ... item characteristics ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM