V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
beginor
V2EX  ›  数据库

客户给了一张数据表, 列名中英文混合, 这酸爽!

  •  
  •   beginor · 2017-06-21 09:25:00 +08:00 · 6537 次点击
    这是一个创建于 2716 天前的主题,其中的信息可能已经有所发展或是发生改变。

    客户给了一张数据表, 列名中英文混合, 居然还有单位, 无任何主键、索引与约束, 这酸爽!

    SELECT
      [id], [项目名称], [项目编号], [起止地点], [拟建长度(公里)], [所属省], [行政主管单位],
      [施工单位], [是否接收中央财政资金支持], [服务水厂], [所属地、市、县], [监管单位],
      [监理单位], [项目信息填报负责人], [联系电话], [通信地址], [单位及职务], [手机],
      [计划总投资(万元)], [计划中央资金(万元)], [计划市、县资金(万元)], [计划国债(万元)],
      [计划省级资金(万元)], [计划贷款(万元)], [计划其他投资(万元)], [计划开工时间],
      [实际开工时间], [计划竣工时间], [录入系统时间], [备注], [Html], [Latitude],
      [Longtitude], [LastUpdate]
    FROM [wushuichang].[dbo].[管网在建]
    
    第 1 条附言  ·  2017-06-21 11:57:23 +08:00
    呵呵,只是吐槽一下而已, 大家一起感受一下这份酸爽!
    第 2 条附言  ·  2017-06-22 08:17:15 +08:00
    很多 V 友说涉嫌泄密, 如果我是问这种表该怎么优化, 某个查询不会写, 算不算是涉嫌泄密呢? 就像这个帖子

    https://www.v2ex.com/t/370160
    83 条回复    2017-06-22 09:49:50 +08:00
    expkzb
        1
    expkzb  
       2017-06-21 09:29:23 +08:00
    一目了然
    est
        2
    est  
       2017-06-21 09:30:34 +08:00
    设计得很好啊。
    LeeSeoung
        3
    LeeSeoung  
       2017-06-21 09:38:05 +08:00   ❤️ 6
    客户给你的表名随便贴网上么。。
    coolyujiyu
        4
    coolyujiyu  
       2017-06-21 09:38:33 +08:00
    我猜数据库是 sqlserver
    beginor
        5
    beginor  
    OP
       2017-06-21 09:42:57 +08:00   ❤️ 1
    @LeeSeoung 数据库名都贴了, 还怕表名
    imn1
        6
    imn1  
       2017-06-21 09:45:17 +08:00
    污水厂?
    LokiSharp
        7
    LokiSharp  
       2017-06-21 09:45:22 +08:00 via iPhone
    这设计不是挺好么
    aksoft
        8
    aksoft  
       2017-06-21 09:48:23 +08:00   ❤️ 1
    这咋了,回敬一下,程序变量名全部用中文
    Tink
        9
    Tink  
       2017-06-21 09:52:10 +08:00
    卧槽能有这样的客户你就知足吧,我都不想提我们的客户了
    jarlyyn
        10
    jarlyyn  
       2017-06-21 09:52:51 +08:00 via Android
    这个问题在哪呢?
    reus
        11
    reus  
       2017-06-21 09:53:31 +08:00
    列名起得很好,非常好,大大减少出错的几率。
    然后,你这么做,等于泄密,小心了。
    Ouyangan
        12
    Ouyangan  
       2017-06-21 10:00:06 +08:00
    这段 sql 写的很清新
    ye10010
        13
    ye10010  
       2017-06-21 10:02:31 +08:00
    哈哈,我也遇到过,厂家要获取我们的进销存数据,也是要求指定字段名,都是中文,有点懵,最后弄了个视图给他,
    EricInBj
        14
    EricInBj  
       2017-06-21 10:03:08 +08:00
    污水厂?

    这张表也许是从 Excel 里导入生成的。
    shalk
        15
    shalk  
       2017-06-21 10:07:18 +08:00
    代码用易语言吧 funny
    ic3z
        16
    ic3z  
       2017-06-21 10:09:43 +08:00
    以下为您显示“污水厂”的搜索结果
    caniuse
        17
    caniuse  
       2017-06-21 10:13:51 +08:00
    连拼音都没有,还好意思 fachulai
    gouchaoer
        18
    gouchaoer  
       2017-06-21 10:17:55 +08:00 via Android
    设计很好
    3dwelcome
        19
    3dwelcome  
       2017-06-21 10:28:21 +08:00
    那啥,我数据库里也是全中文字段。

    设计表的人英文拼音不好,鬼才看得懂。又不是每个人都那么懂英文的,特别是这种大量行业专用术语。
    mooncakejs
        20
    mooncakejs  
       2017-06-21 10:29:39 +08:00
    说实话,中文表名,中文 Enum 我一直都认为非常好,只是不敢在公司项目尝试。
    gdtv
        21
    gdtv  
       2017-06-21 10:34:02 +08:00 via Android
    良心客户
    smithtel
        22
    smithtel  
       2017-06-21 10:34:53 +08:00
    这泄露可以
    knight322
        23
    knight322  
       2017-06-21 10:36:39 +08:00
    你就知足吧
    real3cho
        24
    real3cho  
       2017-06-21 10:38:01 +08:00
    客户也看 V2 的话 那你就很酸爽了
    laoyur
        25
    laoyur  
       2017-06-21 10:41:12 +08:00
    Longtitude --> 拼错了,挖鼻.jpg
    searene
        26
    searene  
       2017-06-21 10:43:25 +08:00
    我第一次知道数据库列名还能用中文
    herozzm
        27
    herozzm  
       2017-06-21 10:45:47 +08:00 via Android
    非常好
    NoAnyLove
        28
    NoAnyLove  
       2017-06-21 10:58:46 +08:00
    @laoyur
    我第一次知道数据库列名还能用中文 +1
    billgreen1
        29
    billgreen1  
       2017-06-21 10:58:47 +08:00
    我觉得不对哎,明显把不应该在一个表里的数据都放到一个表里了。还是我有点太学术派?现实中大家都这么搞?
    jiangzhuo
        30
    jiangzhuo  
       2017-06-21 11:03:08 +08:00
    我想知道你们写程序的时候怎么应对中英文频繁切换的,因为打着打着就要切换一下输入法 很不喜欢用中文变量名
    rswl
        31
    rswl  
       2017-06-21 11:06:31 +08:00
    反正这样挺烦了……不止第一次遇到了
    jeffw
        32
    jeffw  
       2017-06-21 11:35:42 +08:00 via iPhone
    没毛病,一目了然
    ldw4033
        33
    ldw4033  
       2017-06-21 11:38:54 +08:00
    @coolyujiyu dbo 都出来了,不用猜
    Ouyangan
        34
    Ouyangan  
       2017-06-21 11:41:18 +08:00   ❤️ 1
    @jiangzhuo #30 这个问题困扰了我很久 , 比如说搜狗单击 shift 切换中英文 ,但是 shift 很容易冲突
    个人最佳实践是 输入法切换快捷键定义为: alt+shift , 大拇指 alt,无名指 shift , 慢慢习惯了就非常顺手 .
    xifangczy
        35
    xifangczy  
       2017-06-21 11:52:13 +08:00 via Android
    关键还有括号!?
    beginor
        36
    beginor  
    OP
       2017-06-21 11:56:45 +08:00
    @smithtel 这有啥, 只是几个列而已, 又不是数据
    0017
        37
    0017  
       2017-06-21 11:58:44 +08:00
    想知道从这些表名能泄露出来什么信息?
    bombless
        38
    bombless  
       2017-06-21 12:50:31 +08:00 via Android
    还好吧,感觉已经相对一致了
    uxstone
        39
    uxstone  
       2017-06-21 12:57:05 +08:00
    经过 N 手的政府项目?
    tabris17
        40
    tabris17  
       2017-06-21 13:00:27 +08:00
    sql server 么,很棒啊
    kingmo888
        41
    kingmo888  
       2017-06-21 13:18:00 +08:00
    LZ 的行为真的好无聊,你是精神洁癖吗,

    如果不是,干嘛要贴出来?
    bk201
        42
    bk201  
       2017-06-21 13:28:41 +08:00
    或许是起英文名太难拼音又难懂
    sydra
        43
    sydra  
       2017-06-21 13:30:51 +08:00
    为什么我在想这种表怎么做 orm,难道成员变量名也用中文?别告诉我就我一个这么想.
    mengyaoss77
        44
    mengyaoss77  
       2017-06-21 13:35:32 +08:00 via Android
    我学校给政府项目开发也是用的中文列名,我第一次知道的时候也挺惊讶。。
    SlipStupig
        45
    SlipStupig  
       2017-06-21 13:40:52 +08:00
    python:

    为什么 = '1234'
    File "<input>", line 1
    为什么 = '1234'
    ^
    SyntaxError: invalid syntax
    wdlth
        46
    wdlth  
       2017-06-21 14:03:43 +08:00
    某学长还给我看过日文的呢……
    cjyang1128
        47
    cjyang1128  
       2017-06-21 14:04:18 +08:00   ❤️ 1
    这是特殊情况,属于表名很难翻译的那种,比如"中央财政资金支持",涉及到很多专业词汇,我觉得用中文或者直接拼音无伤大雅,只要能够看懂就行了。
    工程师会有比较强的技术洁癖,但是一定要牢记技术是服务于业务的,切不可本末倒置。
    TangMonk
        48
    TangMonk  
       2017-06-21 14:07:19 +08:00
    我起过中文名,原因是因为英文太难翻译,直接用拼音有不太『雅观』
    dbg
        49
    dbg  
       2017-06-21 14:10:39 +08:00
    @SlipStupig 请使用 Python3
    claysec
        50
    claysec  
       2017-06-21 14:12:18 +08:00
    还差拼音:)
    wupher
        51
    wupher  
       2017-06-21 14:18:36 +08:00
    好坏两说,起码你迅速理解了需求。

    这要是全阿拉伯语字段名,你是不是要辞职……
    littleshy
        52
    littleshy  
       2017-06-21 14:28:13 +08:00
    代码文件支持 unicode 变量名的话,其实用中文也挺好。
    limard
        53
    limard  
       2017-06-21 14:35:00 +08:00
    编码字符集上没啥问题的话,这个挺好啊。后面接手的人都不用去翻字典了,碰到几个英语胡乱翻译的,更不知道啥意思。
    viator42
        54
    viator42  
       2017-06-21 14:50:57 +08:00
    写个代码中英文来回切换太麻烦了,还是用拼音比较好
    ender049
        55
    ender049  
       2017-06-21 15:04:22 +08:00
    只看出了你泄露信息,职业素养不太够……
    lommo
        56
    lommo  
       2017-06-21 15:19:11 +08:00   ❤️ 1
    大兄弟 国企 政府还有铁路银行一类的项目做的少啊 不是中文就是 全是 UUID 的列名太多了
    smilexyk
        57
    smilexyk  
       2017-06-21 15:25:32 +08:00
    1. 这种行为已经涉及泄密
    2. 某些专业词汇翻译到英文不仅名称很长,而且很多人都看不懂,这种地方直接使用中文或者拼音反而更加合适一些
    wyntergreg
        58
    wyntergreg  
       2017-06-21 15:35:19 +08:00
    一个标准 sql 也叫泄密,V 站的人你们有多闲
    inrenping
        59
    inrenping  
       2017-06-21 15:49:55 +08:00
    这个表就是 excel 导入的吧
    fish19901010
        60
    fish19901010  
       2017-06-21 17:12:19 +08:00
    你还没见过我们部门经理给一份用户的表设计,30 个冗余字段,
    分别是客户 1 的属性 1 到 5,客户 2 的属性 1 到 5......客户 5 的属性 1 到 5
    我当时看到就是一脸的黑人问号???
    annielong
        61
    annielong  
       2017-06-21 18:45:36 +08:00
    或者 F0001,F0002,F0003 这种字段名怎么样
    Betacoefficient
        62
    Betacoefficient  
       2017-06-21 18:58:43 +08:00
    这尼玛也叫泄密我特么真是醉了。
    Izual_Yang
        63
    Izual_Yang  
       2017-06-21 19:16:51 +08:00 via Android
    @annielong 我见过,而且密码是明文存在 blob 字段里的
    reus
        64
    reus  
       2017-06-21 19:21:31 +08:00
    @Betacoefficient 什么是机密,什么不是,不是由你来判断的。客户给的所有资料,未经许可都不可以泄露一点,就这么简单。你说什么技术上没风险,有个屁用,他们不懂技术,只说你这个资料的来源就是客户资料,你就是涉嫌泄密。这么简单的道理,居然不懂?
    LeeSeoung
        65
    LeeSeoung  
       2017-06-21 19:55:10 +08:00
    @wyntergreg @Betacoefficient 泄密不泄密是你自己说了算?接了客户的需求,客户没有授权你公开数据,擅自公开信息不叫泄密?哪怕是数据库字段名。真要较真的话,客户分分钟能拿这个说事儿信不。
    Betacoefficient
        66
    Betacoefficient  
       2017-06-21 20:05:12 +08:00
    @LeeSeoung @reus 我信,但是我是这样认为的,没有经济损失这些无关痛痒,要是产生经济纠纷我只能闭嘴了。
    nevin47
        67
    nevin47  
       2017-06-21 20:43:33 +08:00 via Android
    居然有人觉得这不是泄密?
    iiduce
        68
    iiduce  
       2017-06-21 21:06:31 +08:00
    以前做过不少科研院所和市政的项目,大多是这种,比那些拼音和别扭的英文强多了,一目了然,便于理解。

    PS:科研院所和市政在这些字段名称上,要比大家想象的规范的多。
    josephshen
        69
    josephshen  
       2017-06-21 21:11:49 +08:00 via iPhone
    基本职业素质都没有!客户给你的,即使再蠢,没有允许也不能在任何公开场合说!我要是你领导立,马开除不二话!是你客户,再也不会找你,并且这一单也必须取消!真搞不懂你这样的人都接受了什么样的教育!
    xrr2016
        70
    xrr2016  
       2017-06-21 21:14:13 +08:00
    中英切换那酸爽...
    shevchenhe
        71
    shevchenhe  
       2017-06-21 21:56:18 +08:00
    一看就是搞 gis 的。。
    qfdk
        72
    qfdk  
       2017-06-21 22:01:02 +08:00
    wushuichuli---> wu water deal with 要是这样的才叫爽酸
    lxml
        73
    lxml  
       2017-06-21 22:42:10 +08:00
    不过这个有的单词 中 to 英 确实很蛋疼,甚至翻无可翻,加上大家英语水平也是层次不齐,你翻一个觉得挺好的,同事转眼过来就一个懵逼。
    huntzhan
        74
    huntzhan  
       2017-06-21 22:57:26 +08:00
    「中央财政资金支持」->「 Government Funding Support 」,翻译起来也不会有太大的问题。
    xixibb
        75
    xixibb  
       2017-06-21 22:58:11 +08:00
    @fish19901010 这个冗余做的好,应对客户毫无理由新增需求来的快,哈哈哈哈
    xixibb
        76
    xixibb  
       2017-06-21 22:58:57 +08:00
    @huntzhan 这字段名也不是人人都记得住,轻轻松松就打错字母了。。。
    guanaco
        77
    guanaco  
       2017-06-21 23:01:16 +08:00 via iPhone
    我想看表内容,谁获利多,炒股票更酸爽。
    mingyun
        78
    mingyun  
       2017-06-21 23:10:37 +08:00
    第一次见,表名,字段用中文
    jcuan
        79
    jcuan  
       2017-06-21 23:54:22 +08:00 via Android
    不管怎么说,放出来感觉还是欠妥。
    tedzhou1221
        80
    tedzhou1221  
       2017-06-22 08:57:48 +08:00 via iPhone
    这世界就这样,大部分人说你错了,你就被标上“错误”。

    现在情况就像去医院,你脚断了,医生却知道你有传染病,一直跟你说传染病的不好,就是不给你医脚。
    sidkang
        81
    sidkang  
       2017-06-22 09:16:26 +08:00 via iPhone
    对面的道德高地上站着好大一群人呢- -|||
    LeeSeoung
        82
    LeeSeoung  
       2017-06-22 09:19:39 +08:00
    @beginor 把此贴让你客户看下就行。
    @tedzhou1221 好心提醒楼主,却被你这种人贴上标签,还瞎上比喻,建议多理清逻辑。
    @sidkang 道德高地是什么?提醒楼主有泄密问题叫道德高地?你这人脑回路有意思。
    linus3389
        83
    linus3389  
       2017-06-22 09:49:50 +08:00
    其实如果项目不给洋大人维护,中文没毛病啊?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1028 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 21:09 · PVG 05:09 · LAX 13:09 · JFK 16:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.