首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要关于建立数据库的建议。全部放在一张表中还是拆分?

需要关于建立数据库的建议。全部放在一张表中还是拆分?
EN

Stack Overflow用户
提问于 2010-12-31 14:47:23
回答 3查看 232关注 0票数 1

我正在为一家房地产公司开发一个应用程序。我面临的问题是如何实现数据库。然而,我只是对采用哪种方式感到困惑,如果您能帮助我推理数据库实现,我将不胜感激。

这是我的情况。

a)我必须将属性详细信息存储在数据库中。

b)这些属性大约有4-5个类别,例如:商业、商业、工业等。

c)现在类别有了子类别。例如。住宅类别将具有子类别,例如。公寓/独立住宅/别墅/农场/单间公寓等,因此同样的方式商业和工业或农业也将有子类别。

d)每个子类别将必须存储不同的值。就像一个居民会有卧室/厨房/大厅/浴室等特征一样,这些特征取决于子类别。

有关如何实现我的应用程序的示例,您可以查看此站点。

http://www.magicbricks.com/bricks/postProperty.html

我可能会这样想这个解决方案。

a)根据将存在的类别创建四到五个表(问题是未来类别可能会增加)。

b)为所有特性、位置、价格、描述创建不同的表,并将公共属性表合并为一个。例如,所有属性都将具有共同的实体,如位置、总面积等。

考虑到目前的情况,你对我有什么建议?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-12-31 15:06:30

为了正确地实现这一点,您需要了解(、read、)有关数据库规范化的知识。每个实体都需要自己的表。您将拥有用于以下各项的表:

房地产对象(

  • objects)
  • categories
  • transactionTypes
  • ...等。

如果您有严格组织在树形结构中的分层类别,您可能希望将其实现为树形结构,所有这些都存储在一个表中。如果存在重叠的可能性,则意味着您需要为每个表提供不同的表,例如:

  • propertyTypes
  • propertyRatings
  • propertyAvailability
  • ...等。
票数 2
EN

Stack Overflow用户

发布于 2010-12-31 14:51:19

通常,您可以为每个属性"type“创建一个表,其中包含"type”特定信息,但也可以有一个相应的" common“表,其中包含所有类型之间的通用字段,如"price”、"address“等……

这就是MLS数据的结构。

票数 0
EN

Stack Overflow用户

发布于 2010-12-31 15:05:44

属性类别是gen-spec设计模式的另一个示例。

有关gen-spec here is the link的先前讨论。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4568610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档