对于数据库设计,每个设计人员往往有自己的爱好与风格,这就容易带来一个问题:意义相同的字段在不同的设计人员下有可能有不同的名称、数据类型、或长度,首先,这显得很不规范,更重要的是可能引发潜在的数据类型转换、长度不够等问题,让人很头痛;
其实对于这种情况powerdesinger的解决方案就是domains,可以把常用字段(date_type,长度,注释,默认值)先建好domain,设计表字段时指定domain就能引用这些属性,这样就能保证相同字段的类型长度等都是一致的,但domains我们用得很少,原因有两个:
1、 没有人来建好一个可供使用的domains,这个活比较繁琐,没有人想花时间去干;
2、 即便个人整理了一些,也不方便在PDM之间或开发人员之间共享;
为了解决这两个问题,个人进行了一些探索,提出方案如下:
1、 domain要分两个层级:
1) 全局domain:各产品线各schema可以共用的字段设计,这些字段比较通用,数目不多,使用次数最多的就是,DBA可以直接统计出来,这些字段设计一经确认,就要纳入正式设计规范,在设计评审时要求强制遵守;
2) schema组domain: 针对单个产品的domain,一般按schema分;
这些产品内的统用字段往往跟业务相关,需要项目组的人员参与,但DBA可以按照schema提供当前生产环境中所有重复使用3次(这个参数可调)以上的字段,让项目组人员在这个基础上整理,如果字段只有一种设计,那很好,直接成为标准;如果不一致(即业务意义相同的字段要么名称不同,要么数据类型或长度不同),那么就得选出一种来作为标准,总得有一个标准嘛,这个事也不难,确认完后,就得到了这一个产品的domains;2、整理出domains清单后,如何方便地在团队各成员之间共享?
要是powerdesigner提供导入导出domains功能,一切问题就迎刃而解了;
可惜pd并没有单独提供这样一个功能,不过,pd支持vbs脚本,所以,实现了domains导入与导出到excel的功能,脚本见另一篇博客;
现在,我们只需要维护好domains的excel清单文件就行了,需要的时候,把最新的清单导入进去就行了;
使用说明如下:
将会把excel中所有的domain导入进去(要避免重复报错),这样PD里面就可以使用了。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13365316/viewspace-2122259/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/13365316/viewspace-2122259/