2013-06-27 64 views
0

我已经搜查,搜查,并不能找到这个答案。插入复合增量键

如果我在MSSQL复合键,并且希望它看起来像这样:

k2 k3 
1 1 
1 9 

2 1 
2 9 
2 3 

3 1 
3 8 

登记处被插入1个或更多的时间和对于每个圆刀片中,k2为相同的。 K2也必须是增量式的。

在这个例子中我插入到第一2名登记在同一时间,因此,K2设置为1,因为有之前没有登记册和K3是由用户给出。

第二届插入物3个登记和K2设置为2,因为它自上次插入递增。

第三插入物2个注册表和它的推移...

+4

好吧,我想你忘了你想要的一切。然后阅读这个问题,看看你能否弄清楚问题。与此同时,我们其他人将祈祷关于k1的启示...... –

+0

k1是无关的,所以我删除它。再读一遍,看看它是否启发你。 –

+0

仍未平整。 –

回答

4

维持两个表(A和B)。表a有K1自动增量主键。表b有K2自动增加主键。包含表a中主键K2的引用表b作为K2上的外键。对于每个批次插入,前进表b和插入scope_identity()/output inserted.K1值作为参考K2。

是你在找什么?

+0

这是一个好主意,我认为就是这样。谢谢 –