在Visual Studio 2010中,您可以比较两个数据库之间的数据库数据。我想用它来将数据从一个数据库复制到另一个数据库。这些数据库具有完全相同的结构。但是当我进行比较时,我看到在VS2010的de DataCompare视图中只显示了65个表,但我在数据库中有66个表。
下一步是找出哪个表没有显示出来。该表的名称是“CMS_PluginInstanceRouteParams”。这个表也存在于我也检查过的两个数据库中。该表的结构是:
FK与CMS_PluginInstance表的PK有关。 CMS_PluginInstance确实显示在“数据比较”窗口中,并且还会比较和复制数据。
我也找不到一个对话框或选项,我可以在其中输入一些要忽略的表名。
有没有人知道为什么这个表没有显示在数据比较窗口的表列表中,以及为什么不比较该表的数据。
答案 0 :(得分:2)
我在http://social.msdn.microsoft.com/Forums/en-US/vstsdb/thread/d84a758e-79ea-4170-8807-7f8bdec98de1/找到了解决方案:
表和视图必须符合列表中显示的两个条件:
首先,对象的模式必须在源数据库和目标数据库之间匹配。
其次,只有具有主键或唯一键的表和视图才会出现在列表中。
答案 1 :(得分:1)
VS2010的DataCompare工具仅比较具有唯一键的表。这个丢失的表很可能没有唯一的密钥。至于传输数据,最好的办法是使用SQL Server Management Studios导入和导出工具。您应该可以毫无困难地在线查找指南。