V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wangbenjun5
V2EX  ›  程序员

Web 开发中数据库表设计问题

  •  
  •   wangbenjun5 · 2018-03-19 10:47:14 +08:00 · 3261 次点击
    这是一个创建于 2442 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一般都用 MySQL 居多,一个表的字段多少个合适?我看有些人设计的表字段多达 50 多个,这样真的好吗?求解释
    15 条回复    2018-03-20 09:56:20 +08:00
    silentoy
        1
    silentoy  
       2018-03-19 11:10:53 +08:00   ❤️ 1
    一切抛开业务的架构设计都是耍流氓
    wangbenjun5
        2
    wangbenjun5  
    OP
       2018-03-19 11:32:58 +08:00   ❤️ 1
    @silentoy 你的意思是只要业务需要?一个表设计 100 个字段也是正常了?
    night98
        3
    night98  
       2018-03-19 14:03:54 +08:00 via Android
    看情况,如果表变动多且字段多,且没有对表中数据有搜索需求的,可以考虑存为 json,这样后期可以无缝切换其他字段。
    RorschachZZZ
        4
    RorschachZZZ  
       2018-03-19 14:19:45 +08:00
    最好别 json。业务如果变化快的话,分分钟就可能有搜索需求。那时候 json。。。。别问我咋知道的。。。
    yy120345
        5
    yy120345  
       2018-03-19 14:29:42 +08:00
    最恨根据业务设计表, 不然现在分分钟想哭 .... 数据库不知道改了多少次
    ichou
        6
    ichou  
       2018-03-19 14:33:06 +08:00 via iPhone
    @RorschachZZZ json 也能搜索
    conn4575
        7
    conn4575  
       2018-03-19 14:50:55 +08:00 via Android
    超过 20 个字段的都是不合理的,需求变更导致要改表结构时分分钟想屎
    lol173
        8
    lol173  
       2018-03-19 15:30:40 +08:00
    超过 20 个字段我看着都烦。感觉小表加关系表有很大的灵活性,就是链表查询会多
    jeremaihloo
        9
    jeremaihloo  
       2018-03-19 15:35:38 +08:00
    @ichou #6 能搜索,那速度怎么保证?
    bxb100
        10
    bxb100  
       2018-03-19 15:48:02 +08:00
    三范式没人提?
    goofcc
        11
    goofcc  
       2018-03-19 16:24:22 +08:00
    业务是进化来的,你和对手都在和时间赛跑,所以要看项目阶段,项目初级阶段这种几十个字段的表是可以理解的,生存都成问题,还顾得了漂不漂亮合不合理?所以,架构是进化来的,,,当然,几年以后,如果项目还是这个样子,那才是问题。
    sculley
        12
    sculley  
       2018-03-19 18:04:23 +08:00
    50 个都算多?
    xuuuu
        13
    xuuuu  
       2018-03-19 23:47:55 +08:00 via Android
    占个楼求个 mac 上好用的 er 设计工具,navicat 家的用不起啊!
    exonuclease
        14
    exonuclease  
       2018-03-20 09:55:08 +08:00 via iPhone
    要是喜欢这么玩还是用 mongodb 吧 不然性能爆炸
    exonuclease
        15
    exonuclease  
       2018-03-20 09:56:20 +08:00 via iPhone
    @RorschachZZZ elasticsearch 了解一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1855 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:22 · PVG 00:22 · LAX 08:22 · JFK 11:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.