埃尔法哥哥数据规范之代码表


最近工作中被代码表搞得头痛 , 正好接着之前发的行政区划代码一文接着讲讲代码表的一些知识和个人理解吧 。

埃尔法哥哥数据规范之代码表
本文插图

代码表有的也叫字典表 , 就是用数字或符号来替代某些具体含义的代码集合 。 像之前发的行政区划代码就是代码表的一种 , 而且是比较复杂的一种 。 通常我们所用的代码表像性别代码、民族代码就相对比较简单 , 可见下图(民族代码表):

埃尔法哥哥数据规范之代码表
本文插图

为什么采用代码表?
采用代码表的好处我认为主要就是规范表示 , 比如同样表达自己是汉族的 , 有的人说是汉、有的人说是汉族 , 还有的或说是han 。 当然说是没问题的 , 听者可能都会理解 , 但到了书面上 , 尤其是到了计算机系统内 , 这种不规范就会造成很多麻烦 , 也就是说数据质量有问题 。 现在经过这么多年信息化的发展 , 各项标准规范也在不断的完善 , 我们有各种国家标准、行业标准把诸如性别代码、民族代码、行政区划代码等等代码规范确定下来 , 然后我们在进行系统建设或者应用的时候就可以参照这些代码标准进行设计开发了 。
当然 , 各种代码标准规范不可能覆盖的那么全 , 比如我们工作中需要机动车车身颜色的代码表 , 这就没有国家标准 , 可能就是一个公安行业标准 , 需要相关部门制定并形成标准 。 我查了下这个代码在公安安全行标《GA 24.8-2005 机动车登记信息代码》中有规定 。 你可以想象像这样的需求不可能都能得到 , 比如我在系统中需要犯罪动机这么一个代码表 , 可能我就找不到对应的标准规范 , 或者类似的标准规范和我的需求不太匹配 , 那么我可能就会按照实际工作情况将数据进行简单的分类并形成代码表 , 供本系统或本类业务使用 。
所以久而久之 , 每一个业务系统都形成了一些自己独有的代码表 , 如果代码并没有上升成为相应的标准 , 原则上就只能本系统或者本类业务使用了 。 如果数据只是在业务系统内使用也还好 , 因为业务系统本身可以对数据及代码进行解释 。 但现在数据共享是潮流 , 我们要打破数据孤岛 , 就要把数据整合起来 。
数据整合部门的职责就是将各个前端业务系统中的数据汇集整合起来 , 那么代码表就是绕不开的一大部分 。 因为如果只是整合了数据却没有整合代码表 , 那么数据的含义是没法进行解释和翻译的 , 尤其是各系统中存在的独有的代码信息 , 所以在进行数据整合的时候一定要连同代码表一起整合 。
很多业务系统可能存在大量的代码表 , 一类信息恨不能用几十张代码表进行表示 , 这样也给数据整合部门带来了巨大的工作量 , 数据整合部门还要了解每类信息和代码表的对应关系和业务含义 , 同时基于共享的数据来对代码表进行取舍 。
在这里要说一下 , 普遍的 , 代码表在计算机系统中是单独存在的 , 比如性别代码是单独一张表 , 民族代码是一张表 。 如下图:

埃尔法哥哥数据规范之代码表
本文插图

这样的话有的系统会有几十张甚至上百张代码表 , 也给数据共享造成了一定的困难 。 于是也就有了整合的代码表形式 , 如下图:

埃尔法哥哥数据规范之代码表
本文插图

采用这样的形式可以把所有的代码放到同一个表中 , 然后在对数据进行解释翻译的时候先套用第一列中的代码类型 , 然后再找后面的代码所对应的具体含义 。 这样的好处是显而易见的 , 如对数据整合部门而言 , 原来需要整合数十张乃至上百张代码表 , 现在只需要整合一张表就可以了 。


推荐阅读