Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何验证两个SQL Server数据库是否包含相同的数据?_Sql Server_Testing_Verify - Fatal编程技术网

Sql server 如何验证两个SQL Server数据库是否包含相同的数据?

Sql server 如何验证两个SQL Server数据库是否包含相同的数据?,sql-server,testing,verify,Sql Server,Testing,Verify,给定两个已知具有相同模式的MS SQL数据库,如何判断它们是否包含相同的数据副本 我正在使用MS SQL Server 2008 Express,并使用ADO.Net API在C和.Net framework的v2.0中进行编码。这两个数据库实例都位于同一个SQL server上 背景:我编写了一个软件,将数据库中的数据导出到一组文件中,并将这些文件中的数据重新导入到数据库的另一个副本中;我想测试在往返过程中是否丢失了任何数据,更具体地说,在初始导出过程中是否丢失或留下了任何数据 我猜一个粗略的

给定两个已知具有相同模式的MS SQL数据库,如何判断它们是否包含相同的数据副本

我正在使用MS SQL Server 2008 Express,并使用ADO.Net API在C和.Net framework的v2.0中进行编码。这两个数据库实例都位于同一个SQL server上

背景:我编写了一个软件,将数据库中的数据导出到一组文件中,并将这些文件中的数据重新导入到数据库的另一个副本中;我想测试在往返过程中是否丢失了任何数据,更具体地说,在初始导出过程中是否丢失或留下了任何数据

我猜一个粗略的方法是从每个数据库中的每个表中选择*,然后使用客户端代码比较所选的记录集。有没有另一种方法,需要更少的客户端代码


我找到了有关备份和恢复数据库以及选择和插入数据的文档,但没有注意到有关如何验证/证明往返完全成功的文档,例如,如何验证两个数据库中一个表的两个副本是否包含相同的数据。

第一步是比较记录计数。你可以快速完成这项工作

select count('x') from TAbleY
你需要对每一张桌子都这样做


为了比较表中的数据,我将使用函数

红门的可能就是答案。

您可以使用红门SQL数据比较 1> 它将告诉您数据库中每个表中的数据总数 2> 它将生成一个脚本,该脚本将显示其中的不同数据,以便通过执行它,您可以使数据相同。 3> 它将通过SQL比较显示模式是否不同 4> 许多功能非常有用,您还可以同步两个数据库


除此之外,Visual studio 2012还为您提供了一个比较数据的选项,您也可以尝试使用该产品

该产品的功能比我要求的要多,但它的存在表明,可能连基本功能都不是内置的。谢谢;现在我看到还有一个CHECKSUM_AGG函数,可以用来对表中的每一行进行校验和。建议为QA应用程序将校验和与校验和_AGG相结合。