自定义字段数据表如何设计

最近有一个需求:一套系统必须适应多个客户,但每个客户的订单字段都不同,而且每个客户都有一个独立的数据库,所以订单表固定一些必须字段,还有一些字段由用户自定义,数据表结构如何设计比较好。自定义字段要做搜索查询功能。
在网上找了下方案:
1:将自定义字段存成json字段类型,存在订单附表中,然后跟订单主表关联。
2:在订单附表中将字段名和值按 key-value形式,存成一行一行的形式,不过这样可能订单附表会非常大,效率太低。
还有没有哪些方法,怎么设计数据表比较好点?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 3

既然都打算把自定义的字段设计成key-value的模式了,就不需要附表了吧,直接把这两个字段加在主表,看数据量大小,如果不是百万级别以上的基本操作起来应该也不会有太大问题;若是超过百万级别,可以考虑分表+加索引+缓存的方式处理。

4年前 评论
零下冰酷 (楼主) 4年前
回到原点 (作者) 4年前

给客户分类,按分类创建不同的订单表

4年前 评论
零下冰酷 (楼主) 4年前
自由与温暖是遥不可及的梦想

直接 数据库 来一个 json字段 里面 有啥就存啥 为何要放到附表去

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!