怎么用SQL里的SSIS package来插入有相同外键值的不同ID
从图片里大家可以看到,我想把A表里的DKN和Countnumber以及B表里的ChargeID列插入到C表中,可是因为关系列CaseID与ChargeID是一对多的关系,...
从图片里大家可以看到,我想把A表里的DKN和Countnumber 以及B表里的ChargeID列插入到C表中,可是因为关系列CaseID与ChargeID是一对多的关系,当我用SSIS包load数据的时候,只能插入ChargeID 1,2,2,4,4,4,而不是1,2,3,4,5,6,如何能得到图中C表那样的结果呢,该怎么写query,或者怎么设计包,先谢谢大家了。
展开
2个回答
展开全部
你的表设计不合理。表A的Countnumber 和 CaseID是联合主键;表B要想与A相关联,必须包含A瑶联合主键。建议重新设计表。A(DKID,DKN,Countnumber,ChangeID);B(ChangeID,CaseID)
查询语句:select DKN,Countnumber,ChangeID from A
不过你要的结果有点奇怪,正常情况下,查询内容应该是你现在的表A的内容。
仔细想想吧,你的表结构不科学,建议学一学数据库的规范,如:三个范式.
查询语句:select DKN,Countnumber,ChangeID from A
不过你要的结果有点奇怪,正常情况下,查询内容应该是你现在的表A的内容。
仔细想想吧,你的表结构不科学,建议学一学数据库的规范,如:三个范式.
追问
多谢你的回答,其实A表是旧数据库, DKN和countnumber做联合主键,但是新的数据库里没有countnumber,只有caseID,一个caseID 对应一个DKN,同时对应多个ChargeID,所以C表当一个参照表,以便知道哪个ChargeID 与哪个DKN 相对应,我得先尝试能否做到我要的结果,实在做不到,再跟头说是不是设计不合理,您觉得不太可能达到我要的结果哈?
追答
不是不太可能,是根本不可能.就现在的表结构,是得不到你的结果的.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询