关于一个动态生成表的设计?

发布于 2022-09-02 11:04:18 字数 185 浏览 17 评论 0

有这样一个系统,系统中有权益这样一个概念。权益可以表示优惠券,红包或者定向优惠券等。每一种权益其中所包含的字段都是不同的。那么对于不同的客户我可能会定义一个不同的权益,现在根据我的想法,设计根据客户定义一个配置,然后来动态的创建一张表表示这个类型的权益。请问这种设计是否合理,是否有其他的设计?如果采用采用这种设计,JAVA中有没有根据配置动态创建表的库?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

倥絔 2022-09-09 11:04:18

这种结构不确定而又可能大量创建的数据表最好是使用文档型数据库如mongodb,或者使用关系型数据库的json类型字段如postgresql,它们都是支持直接使用json字段进行查询的。

至于不支持json的数据库如mysql,也可以使用json格式的字符串来存放,如果需要使用某些json字段查询,可以抽取出来作为独立字段。如——

name varchar
owner ?
data json

以上结构,name为权益名称,owner为所属用户(也可以再设置其他一些通用字段),而data中则是以json格式存放的权益详细数据。

这样一张权益表就可以,无论用户定义何种结构的权益,一律以json存放,你所要做的只是json的解析就可以。

涙—继续流 2022-09-09 11:04:18

首先,java中可也用代码来创建数据库表。
其次,你这个需求不需要这样设计,数据表一般都是有数据量的,你想根据用户来创建表,那这么多用户需要创建多少表?
我的建议的:用户表;用户权益关系表;权益表1(优惠卷),权益表2(红包)...
创建这三类表就可以了,完全实现你的功能

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文