我正在制作一个用户可以注册,有库存并且在该库存中有武器的游戏。我想将这些信息存储在我的数据库中。
到目前为止,我的设置方式如下:
我的用户表包含UserID列(以及其他信息)。
我的广告资源表包含一个InventoryID列和一个UserID列 (UserID对应于库存的所有者)
My Weapons表包含一个引用该列的InventoryID列 它属于的库存。
这是标准的做事方式吗?我可以更改布局并使其更简单吗?使用像这样的数据库似乎有点乏味。
如果我的User表具有对库存条目的引用并且该条目具有一系列武器,那将会容易得多。我通过存储每个条目的ID的引用来实现这一点,但我不能只创建一个" User" php类(通过对数据库运行一个查询,引用了一个Inventory对象,它有一个Weapon对象数组)。
也许有一个框架来实现这个目标?
答案 0 :(得分:1)
你所描述的是简单的一对多关系。
您不需要库存表。
您需要一个以userID
为主键的用户表,并将其用作武器表中的外键。
借助联接您可以使用一个查询来获取所有记录。
答案 1 :(得分:0)
您是否考虑过NoSQL数据库? :)
关系数据库通常需要您所描述的“连接”表。如果用户库存为1:1而且1件武器只能属于1个库存/用户,那么你可以在没有连接表的情况下实现这一点 - 只需要武器存储用户ID。