|
某种原因,需要将TD中的需求导入到缺陷中。
TD的版本是TD 7.6 SP4
开始分析表结构:
缺陷表是td.bug,比较重要的字段有:
BG_BUG_ID ID,看了结构,不是自增的字段;
BG_STATUS 状态,类似Open,Fixed等;
BG_RESPONSIBLE 被指派给谁
BG_SUMMARY BUG标题
BG_DESCRIPTION BUG描述
BG_REPRODUCIBLE 是否可重现
BG_SEVERITY 严重级别
BG_PRIORITY 优先级别
BG_DETECTED_BY 提交者
BG_DETECTION_DATE BUG发现日期
BG_TO_MAIL 不详,但值都是Y
BG_USER_01 自己定义的一个分类
BG_VTS 似乎是最后一次被编辑的日期时间
其余没有提及的字段,多为NULL
接着分析需求表的表结构,表名是td.req
RQ_REQ_ID ID,
RQ_FATHER_ID 父ID,如果是-1,则是一个一级分类,而不是一个需求
RQ_REQ_NAME 标题,但是我们的人却把需求的所有内容写在了这里
RQ_REQ_AUTHOR 需求的作者
RQ_REQ_DATE 提需求的日期
RQ_REQ_TIME 提需求的时间
RQ_NO_OF_SONS 如果等于0,则是一条需求,如果不等于0,则是一个二级分类
RQ_VTS 似乎是最后被编辑的日期时间
查出来需求 select * from td.req where rq_father_id<>'-1' and RQ_NO_OF_SONS='0' order by rq_req_date,rq_req_time
因为我们的人为了省事,需求的标题当内容用了,而在缺陷中,标题是标题,内容是内容, 所以,要这样处理一下:
select left(RQ_REQ_NAME,20)+'(内详)',RQ_REQ_NAME, * from td.req where rq_father_id<>'-1' and RQ_NO_OF_SONS='0' order by rq_req_date,rq_req_time
检查了一遍,查出来的记录,没什么问题。
td.BUG表中的13个字段,都需要插入值
将这13个字段和td.REQ中的13个字段建立关系:
td.BUG td.REQ 说明
BG_BUG_ID RQ_REQ_ID 需求id对应缺陷id
BG_STATUS 'Open' 缺陷状态一律置成Open
BG_RESPONSIBLE 'wangjianguo' 缺陷被指派给一个固定的人
BG_SUMMARY left(RQ_REQ_NAME,20)+'(内详)' 取需求的标题丢前10个汉字,后边标注“(内详)”
BG_DESCRIPTION RQ_REQ_NAME 取需求的标题作为缺陷的内容
BG_REPRODUCIBLE 'Y' 缺陷是否可重现一律置成Y
BG_SEVERITY '2-Medium' 严重级别置为中
BG_PRIORITY '2-Medium' 优先级别置为中
BG_DETECTED_BY RQ_REQ_AUTHOR 需求的提出者置为缺陷的发现者
BG_DETECTION_DATE RQ_REQ_DATE 需求的提出日期置为缺陷的发现日期
BG_TO_MAIL 'Y' 这个字段不详,一律置成Y
BG_USER_01 'CLASS' 这是个自定义的分类,且需求和缺陷此分类不一致,没深究怎么自动转过去
BG_VTS RQ_VTS 应该都是最后被编辑的日期时间
SQL语句如下:
insert into td.BUG (BG_BUG_ID,BG_STATUS,BG_RESPONSIBLE,BG_SUMMARY,BG_DESCRIPTION,BG_REPRODUCIBLE,BG_SEVERITY,BG_PRIORITY,BG_DETECTED_BY,BG_DETECTION_DATE,BG_TO_MAIL,BG_USER_01,BG_VTS)
select RQ_REQ_ID,'Open','wanjx',left(RQ_REQ_NAME,20)+'(内详)',RQ_REQ_NAME,'Y','2-Medium','2-Medium',RQ_REQ_AUTHOR,RQ_REQ_DATE,'Y','CLASS',RQ_VTS
from td.req
where rq_father_id<>'-1' and RQ_NO_OF_SONS='0'
order by rq_req_date,rq_req_time
搞定,查了一下没什么问题,手工改了自定义的分类。整个过程结束了。
总共用时大约90分钟。 |
|