一直听别人说数据字典,但是一直也没弄清楚什么叫“数据字典”,这几天正好不算忙,整理下不清楚的东西~~
啥叫数据字典
数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。简而言之,数据字典是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。
数据字典(Data dictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由DBMS自动更新的数据字典。被动数据字典是指修改时必须手工更新其内容的数据字典。
以上来源于官方
默默想说一句,字我都认识,就是看不懂啥意思....务实的人,我还是比较喜欢实例,更简单粗暴。
下面是一个数据库数据字典实例:
咋写数据字典
数据库数据字典定义(其实也是一个创建表的过程,创建成功后在表内 Ctrl+D 即可查看数据字典):
CREATE TABLE IF NOT EXISTS `tag` ( `uuid` varchar(38) NOT NULL COMMENT 'UUID', `tenant` varchar(38) NOT NULL COMMENT '租户', `spuId` varchar(38) NOT NULL COMMENT 'GID', `skuType` varchar(38) NOT NULL COMMENT 'SKU类型', `skuId` varchar(38) NOT NULL COMMENT 'SKU的ID', skuUuid varchar(38) NOT NULL COMMENT 'SKUU的UUID', lastModified DATETIME COMMENT '最后修改时间', `name` varchar(64) COMMENT '名称', `color` varchar(64) COMMENT '颜色', PRIMARY KEY (`tenant`, `uuid`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8 COMMENT '商品标签';
有时候我们与外部系统对接时,也需要提供数据字典给到对方,便于对方查询,这个时候,往往提供的数据字典是一份Excel,包含系统的业务字段名称、对应的业务含义、构造说明等内容,如:
数据字典其实不是很复杂的概念,就是网上说的都太理论化了,和实际应用脱节比较严重,很多时候,我们更关心怎样可以快速的和实际项目产生联系。