编辑:让我完全重新表述一下,因为我不确定是否存在像我最初描述的那样的 XML 方式。
另一个编辑:这需要是一个可重复的过程,并且必须能够以可以在 C# 代码中调用的方式进行设置。
在数据库 A 中,我有一组表,通过 PK 和 FK 关联。比方说,一个父表,带有子表和孙表。
我想要将一组行从数据库 A 复制到数据库 B,该数据库具有相同名称的表和字段。对于每个表,我想插入到数据库 B 中的同一个表中。但是我不能被限制使用相同的主键。 复制例程必须为数据库 B 中的每一行创建新的 PK,并且必须将它们传播到子行。换句话说,我在数据之间保持相同的关系,但 PK 和 FK 不完全相同。
你会如何解决这个问题?我愿意接受建议。 SSIS 并没有被完全排除,但在我看来它不会做这样的事情。我也愿意接受 LINQ 中的解决方案,或者使用类型化数据集,或者使用一些 XML 东西,或者任何可以在 SQL Server 2005 和/或 C# (.NET 3.5) 中工作的东西。最好的解决方案不需要 SSIS,也不需要编写大量代码。但我承认这个“最佳”解决方案可能不存在。
(这个任务不是我自己提出的,也不是我自己提出的限制;这就是它给我的方式。)
最佳答案
我认为 SQL Server 实用程序 tablediff.exe可能就是您正在寻找的。p>
另请参阅this thread .
关于sql - 将关系数据从数据库复制到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59357/