V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
tairan2006
V2EX  ›  MySQL

动态表单,优先用纵表还是 Json?

  •  
  •   tairan2006 · 2020-05-24 21:44:19 +08:00 · 4935 次点击
    这是一个创建于 1629 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在用的是 MySQL8.0.20 ,目前项目需要引入动态表单适配不同客户的需求。前端目前准备选用`vue-ele-form-generator`这个开源项目(感谢作者)。

    后端这边其实可选方案不多,都是老一套。要么用纵表,要么用 Json ;要么就是弄个无意义的 fieldname,再加一个表做映射。

    考虑到 MySQL8 的 Json 已经比较成熟了(当然还是不如 pg 和 Mongo ),我个人倾向于选 Json 方案,不知道各位老哥有啥建议没?指点一下。
    17 条回复    2020-05-25 11:50:06 +08:00
    2kCS5c0b0ITXE5k2
        1
    2kCS5c0b0ITXE5k2  
       2020-05-24 22:41:01 +08:00
    看下这个数据要不要用来 查询 是否经常更新
    tairan2006
        2
    tairan2006  
    OP
       2020-05-24 22:45:40 +08:00
    这种表单更新频率很低,就是提交审核的,审核通过基本就不会变了。
    @emeab
    HuberyPang
        3
    HuberyPang  
       2020-05-24 23:10:03 +08:00 via Android
    收藏下看有啥好的方案,如果这些表单录入的数据还要导出来,有什么好的方案。
    flyhelan
        4
    flyhelan  
       2020-05-24 23:34:10 +08:00
    json 方便。
    2kCS5c0b0ITXE5k2
        5
    2kCS5c0b0ITXE5k2  
       2020-05-24 23:37:03 +08:00
    @tairan2006 用 json 就比较灵活 但是如果突然要用这些字段来查数据会比较麻烦。。
    tairan2006
        6
    tairan2006  
    OP
       2020-05-24 23:48:07 +08:00
    @emeab 查询其实还好,常用字段加虚拟列做索引,不常用的话就同步到 es 里搜索吧…
    Felldeadbird
        7
    Felldeadbird  
       2020-05-25 01:52:25 +08:00 via iPhone
    8.0 看看 json 的 特性是不是满足 大部分需求。这很关键…现在生产环境有一些设计用了 json,可版本在 5.5……各种查询困难死我了…
    dodo2012
        8
    dodo2012  
       2020-05-25 03:36:57 +08:00
    我用 json,不过用的 pg
    xuanbg
        9
    xuanbg  
       2020-05-25 08:41:28 +08:00
    工作流表单用 json 存最合适不过。
    feiandxs
        10
    feiandxs  
       2020-05-25 09:36:45 +08:00
    还有一个做法,我们根据不同的需求自动初始化出不同字段的表。。。
    tairan2006
        11
    tairan2006  
    OP
       2020-05-25 11:10:44 +08:00
    @feiandxs 那表太多了,而且就算是同一个客户,他的需求也会变…
    vanleon
        12
    vanleon  
       2020-05-25 11:23:30 +08:00   ❤️ 1
    个人倾向于 json,之前有个需求,根据不同场景配置不同举报表单,使用的就是 json 。


    vZexc0m
        13
    vZexc0m  
       2020-05-25 11:27:56 +08:00
    @vanleon #11 请问 展示 json 的是什么软件
    vanleon
        14
    vanleon  
       2020-05-25 11:31:13 +08:00
    wysnylc
        15
    wysnylc  
       2020-05-25 11:33:41 +08:00
    使用倒装表也就是你说的纵表
    json 存在查询困难问题而且如果没有使用支持 json 的数据库版本就很难受
    lewis89
        16
    lewis89  
       2020-05-25 11:46:29 +08:00
    @vZexc0m #13 目测 命令行 jq
    fumichael
        17
    fumichael  
       2020-05-25 11:50:06 +08:00
    @vZexc0m #13 maybe 是一个网站,代码生成图片
    https://carbon.now.sh/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2884 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 02:25 · PVG 10:25 · LAX 18:25 · JFK 21:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.