不同对象类型的数据库模式

时间:2013-03-22 12:36:39

标签: mysql sql database

我正在创建一个包含不同类型对象的新应用程序。例如是显示器,鼠标和键盘。不同的对象有自己的属性。

监控:品牌,分辨率,颜色等 鼠标:品牌,类型,有线/无线 等

问题: 不同类型对象的最佳模式是什么?

  1. 单人表
  2. 多桌
  3. 鉴于单个表(查询性能原因),属性将是db列类型,但由于不同类型的对象具有不同的属性,这怎么可能?在设计时可能会有未知的对象,可能会在未来添加。这会产生很多列吗?

    另一方面,当列出所有对象时,多个表是否会遇到性能问题(查询多个表)?

    提前致谢。

1 个答案:

答案 0 :(得分:1)

这听起来有点像Many-to-Many关系,在这种情况下你应该创建3表设计,

链表类

  • ObjectID( PK
  • 的ObjectName
  • 其他栏目......

对propertyList

  • PropertyID( PK
  • 的PropertyName
  • OtherColumns

Object_Property

  • ObjectID( FK ) - 这可能是具有PropertyID的复合主键
  • PropertyID( FK
  • otherCOlumns ...