用户清单数据库设计?

Sil*_*ced 0 mysql

我正在用 MySQL 用 PHP 制作游戏,我想知道我存储用户购买的项目的最佳方式是什么,以便将其与他们的帐户相关联。

我计划有一个包含项目信息的数据库,我能想到的唯一方法是:

  1. 在排序的序列化数组中为用户项目提供一个表
  2. 拥有大量具有一定库存空间的列
  3. 包含 user_id 和 item_id 的表,每次购买商品时添加一行,选择与用户相关的 user_id 以显示其商品

哪个最好?

Mar*_*rco 5

我想你一开始就知道用户可以购买哪些物品,所以在我看来你应该有三个表

  • USERS表,其中存储用户数据(PRIMARY KEYuser_id
  • ITEMS表,您可以在其中存储带有成本和数据的项目(PRIMARY KEYitem_id
  • USERITEMS表,您在其中存储用户购买的每件商品。它应该有两列:user_iditem_id,并且在用户每次购买商品时添加一行。

此设计可让您轻松管理购买的商品并向每位用户显示其库存。
更多:避免在数据库中浪费空间复制无用信息