WEB开发网
开发学院数据库MSSQL Server 用TableDiff产生SQL Server同步脚本 阅读

用TableDiff产生SQL Server同步脚本

 2007-05-17 09:36:20 来源:WEB开发网   
核心提示:TableDiff是一个控制台,它可以在SQL Server的表之间进行数据比较,用TableDiff产生SQL Server同步脚本,另外,因为它是用SQL Server打包的,TableDiff在这个目录下:C:Program FilesMicrosoft SQL ServerCOM,文件的位置对你指定安装是非常重

TableDiff是一个控制台,它可以在SQL Server的表之间进行数据比较。另外,因为它是用SQL Server打包的,所以如果你想在不同的数据库环境下检查查找表的话,你就不需要另外购买其他工具。

在不同的数据库环境中,DBA经常不得不在查找表中寻找它们的不同(例如:开发、质量保证和生产等不同的环境下)。这些查找表中的数据必须适应于所有的环境,这样才能确保测试的准确。

在市场上有一些非常好的工具可以进行这些比较,也能执行很多其它功能。但是现在你不需要去购买它们了,因为SQL Server已经自带了这种工具,那就是TableDiff,它能为你完成这些功能。

TableDiff使你可以很轻松地在表中进行数据比较,同时它也可以会为你创建脚本来同步程序环境。另外,作为一个能使查找表在测试环境和产品环境之间同步的优秀工具,TableDiff对于数据在产品服务器和复制服务器之间的同步也同样是非常有用的,这样,当发生复制问题的时候,它就能体现出优势了。

示例

TabelDiff是一个控制台应用软件,所以,你需要通过命令提示符、批处理文件或者通过使用xp_cmdshell的SQL Server来调用它。在这个例子中,我将在同一个服务器上的两个数据库之间搭建一个小的环境,然后比较两个表中的数据。在这里我是通过一个批处理文件来调用TableDiff。

Listing A中的脚本创建了两个数据库,并在每个数据库中创建了一个SourceTable表。然后将数据分别插入到每个环境中的SourceTable表里面,这时候,插入到两个表中的数据是明显不同的。(就我的SQL Server 2005环境而言,TableDiff在这个目录下:C:Program FilesMicrosoft SQL ServerCOM。文件的位置对你指定安装是非常重要的,因为你调用批处理文件进行创建的时候需要知道它的确切位置。)

1 2  下一页

Tags:TableDiff 产生 SQL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接