【发布时间】:2017-04-13 07:55:19
【问题描述】:
我有一个应用程序,用户可以在其中创建/更新有关不同对象(公寓、房间、房屋、土地等)的信息
每种类型的对象都有不同的参数集。
我想解决办法:
将所有信息存储在一个表中
id,title,object_type,rooms_count,house_floors_count,land_area,flat_area, description, etc..
优点:快速搜索(因为每一列都有正确的数据类型,rooms_count - 整数,描述 - 文本)
缺点:巨大的非规范化将信息存储在不同的表中 对象:id、标题、object_type、价格 object_params: id, param_title, param_type(integer,text,float,etc.) object_param_values:id_param,id_object,value(
text类型的列)
优点:非规范化,前端保证当object_type='flat'时,只有flat的参数显示给用户(在1.它也是这样工作的)
缺点:object_param_values中的value具有text类型,这对速度不利。
【问题讨论】:
-
查看与我添加的 EAV 标签相关的问题。
标签: mysql database-design