繁体   English   中英

具有相似属性的多个对象的数据库设计

[英]Database design for multiple objects with similar attributes

我的unity3d游戏具有以下对象和相应的属性:

  1. 木材厂

    • 水平
    • 生产
    • 最大上限
    • StoneUpPrice
    • ClayUpPrice
  2. 采石场

    • 水平
    • 生产
    • 最大上限
    • ClayUpPrice
    • WoodUpPrice
  3. 粘土坑

    • 水平
    • 生产
    • 最大上限
    • WoodUpPrice
    • StoneUpPrice

我的问题是,我应该如何在Mysql数据库上组织它?

我已经想到了:

  • 制作一个名为Buildings的唯一表,并将所有属性作为一列放置,同时还要使用一个user_id来引用相应的用户

  • 为每个具有相应属性的建筑物创建一个表格,所有属性也都带有一个user_id。

我还没有在大学里学习数据库,所以我将非常感谢您的帮助。 我的英语不是最好的英语之一,但是我试图使自己尽可能清晰。

现在谢谢:)

你可以做2张桌子

  1. 类别:持有Lumbermill,Quarry等类别
  2. 对象:以category_id作为外键

类别

id
name

对象

category_id
Level
Production
MaxCap
StoneUpPrice(can be null for non relevant category)
ClayUpPrice(can be null for non relevant category)
WoodUpprice(can be null for non relevant category)

在发表评论之前先进行编辑

您可以像下面的player_object一样创建单独的桥表

player_object

player_id
object_id

假设您有如下的玩家表

玩家们

id
name

暂无
暂无

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

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