我需要同步两个表。
表A
Id    Name  
表B
Id  Name RefID --It's a Foreign key, defined as primary key in Table "TableReference"
表参考
RefID -- Identity Column, auto increment
我需要合并TableA,并且TableB在每次插入时TableB,都应该插入一个值,TableReference并且应该将插入的值复制到RefId的列中TableB。
我在做什么?
我正在使用 SSIS,因此我需要一个基于 SSIS 的解决方案或基于 SQL 的解决方案。我知道如何使用 Merge SQL 命令合并表,但我无法将值插入TableRef并将其复制回TableB. 无法弄清楚我怎么能做到这一点。SQL 用户定义的函数不允许INSERT,所以我不能使用它。
Merge TabaleB T
Using Table A S
On S.Id=T.Id
WHEN MATCHED THEN
UPDATE
T.ID=S.ID,
T.NAME=S.NAME
WHEN NOT MATCHED BY TARGET THEN
INSERT(S.ID,S.NAME, {Somehow here i need a function call that inserts in TableRef and   Returns SCOPE_IDENTITY})
问题是 T-SQL 函数不允许INSERT,并且存储过程不能在这里调用,因为除了afterMerge之外不允许任何 TSQL 事物。INSERTWHEN NOT MATCHED BY TARGET THEN