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

今天对接的一个公司 看到接口文档我惊了

  •  1
     
  •   yasumoto · 262 天前 · 19520 次点击
    这是一个创建于 262 天前的主题,其中的信息可能已经有所发展或是发生改变。
    居然还有这种操作 备注字段 12345678910 (笑 cry )

    https://i.loli.net/2021/03/15/dnpyGJEbXekCr51.png
    138 条回复    2021-03-17 11:17:25 +08:00
    1  2  
    ervqq
        101
    ervqq  
       261 天前
    我司货品表都有 30 个
    VictorJing94
        102
    VictorJing94  
       261 天前
    erp 表
    dotw2x
        103
    dotw2x  
       261 天前
    见过一些 Sass 系统,为了扩展,少改系统少更新,attr1,attr2.....attrN,挺好用的(手动狗头)
    RyanOne
        104
    RyanOne  
       261 天前
    我们这 对接 cdc 的 那文档像这种字段 一个接口里面有 30 多个
    ichou
        105
    ichou  
       261 天前 via iPhone
    不懂就问:千万的表加个字段会咋滴?
    就数据库而言,千万挺小的吧
    lvtuyukuai
        106
    lvtuyukuai  
       261 天前
    少见多怪
    Ssskyl
        107
    Ssskyl  
       261 天前
    这很正常,使用第三方服务的时候,这种额外预留的字段给客户
    DivineRapierH
        108
    DivineRapierH  
       261 天前
    PostgreSQL 的 jsonb 是真好用呀,性能也不差。
    encro
        109
    encro  
       261 天前
    有时候可以做为动态字段设计,比如设计一个 product 表,product 的 custom_field 所代表的意义会根据分类变化。
    又比如 crm 的 custom 字段,很多都是终端用户自定义的,这时候可能就是 contact.custom_field1,contact.custom_field2 这样的命名。

    @redtea
    @yanulg

    Mysql online DDL 不锁表增加字段和索引方法 https://c4ys.com/archives/1943
    starcraft
        110
    starcraft  
       261 天前
    关系型有这种也太正常了。还有这种设计也从来不是什么不合理的设计。
    就和数据库理论学习各种范式,而实际数据库设计有冗余字段一样。
    sjzzz
        111
    sjzzz  
       261 天前
    同学~盲表 了解一下
    superfat
        112
    superfat  
       261 天前
    数据库设计上是有这种冗余字段的设计,自有它的合理性
    legiorange
        113
    legiorange  
       261 天前 via Android
    这根本不算什么
    自从我接触了一个用 mysql 当报表的事业单位,我已经释然了。
    polymerdg
        114
    polymerdg  
       261 天前
    你是沒見過 上百個備註字段的吧?
    jzmws
        115
    jzmws  
       261 天前
    这个是 扩展字段吧! 不同业务系统对接都加一个 然后就
    hyq
        116
    hyq  
       261 天前
    @ichou 对千万级,上亿级的表增加字段,可能会卡上几十秒到几分钟
    ZoR
        117
    ZoR  
       261 天前
    又不是不能用.JPG
    baibaibaibai
        119
    baibaibaibai  
       261 天前
    66666
    collery
        120
    collery  
       261 天前
    我们这边中台就有这种表。 你突然接入感觉挺突然的
    visonme
        121
    visonme  
       261 天前
    这种设计其实在信息系统是很常见的,像老系统设计,或者存储一些不确定的属性字段时候都会使用,基于元数据那套成本高,小公司一般不会去这怎么干的,而且这类字段通常以展示为主
    ddup
        122
    ddup  
       261 天前
    楼主少见多怪了。
    zjuster
        123
    zjuster  
       261 天前
    @preach 拓展字段 用 Json 一个 feature 字段 就够了,不用十个吧 ...

    @weizhen199 @fkdtz 预留字段 数据格式不一定能用吧?可能还是要加新字段
    fkdtz
        124
    fkdtz  
       261 天前
    @zjuster
    什么叫预留,就是基于当前事实,预估在未来会发生某件事,而提前留出空间。

    所以这种操作必然要基于其所在的业务场景来做预留,没必要纠结这个 case 中由于全都是字符类型未来会不会不满足需求,更没必要去推断其业务发展。

    另外就算未来非加字段不可也没什么的,预留只是基于经验判断尽可能减少在未来变动的成本而已,并不是银弹。
    xumng123
        125
    xumng123  
       261 天前 via iPhone
    有啥,我的数据库已经 reserved2xx 了。各种奇葩没用的需求多了去了,过两天就没用了。reserved 可以循环利用。
    iddddg
        126
    iddddg  
       261 天前
    看到你惊了,我惊了
    wmhx
        127
    wmhx  
       261 天前
    最讨厌纵表了, 但很多时候没办法,比如产品属性,动态表单类的都是这种设计, 非常不好记, 但这也是一种设计.
    futamilk
        128
    futamilk  
       261 天前
    那你是见得少了 hhh
    前段时间才遇到的,一个字段根据数据格式不同,需要分别解析为接近十种不同含义。就是因为预留字段不够用了
    wupher
        129
    wupher  
       261 天前
    这种冗余字段设计在 2000 年前后的金蝶、用友、ERP 中还挺常见的。

    那时大家使用关系数据库,报表或者表单通过中间映射表甚至是语言层动态映射。

    为了扩展很多事实表都会做类似处理。

    你要以 2021 年眼光来看,有 MongoDB 、json types,那确实挫。

    没办法,很多时候手上有个锤子就看什么都是钉子。
    nicevar
        130
    nicevar  
       261 天前
    说实话,真的是少见多怪,你要是翻出以前的各种操作系统代码注释都能找到这样的
    seakingii
        131
    seakingii  
       261 天前
    数据表预留备用字段是常见的业务上的处理方式,有什么好笑的。动不动就笑话别人不是好心态。
    poorcai
        132
    poorcai  
       261 天前
    我觉得这很正常吧?这个不是现在要用的,是为了后面扩展的,一般有这种字段的,内部都会维护一个字段说明的文档。
    opengps
        133
    opengps  
       261 天前
    早期项目用的生成工具太正常,改一次 sql 结构影响代码太多,重新生成还有不合意的地方,所以就只能用这个方法
    alfchin
        134
    alfchin  
       260 天前 via Android
    @xuanbg 还以为有啥优秀的解决方案,原来比靶子还不靠谱。。。
    tgich
        135
    tgich  
       260 天前
    基操罢了
    catsoul
        136
    catsoul  
       260 天前
    基本操作,尤其是涉及到跨公司,跨部门那种项目的时候,这种预留是很常见的。
    CBS
        137
    CBS  
       260 天前
    预留就预留,你发送给前端,这真的河里嘛?
    shawn102400
        138
    shawn102400  
       260 天前
    @hyq 几分钟是想多了,没几个小时下不来。
    1  2  
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2885 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 10:59 · PVG 18:59 · LAX 02:59 · JFK 05:59
    ♥ Do have faith in what you're doing.