tablediff 是 SQL Server 提供的一个非常实用的命令行工具,专门用于比较两个表(通常是一主一从)的数据差异。
它不仅能告诉你“哪里不一样”,还能生成修复脚本(SQL 语句)来自动把从库缺的数据补上,非常适合解决你之前遇到的“找不到该行”这类数据不一致问题。
tablediff -sourceserver "主库IP\实例名" -sourcedatabase "TestDB" -sourcetable "Orders" -targetserver "从库IP\实例名" -targetdatabase "TestDB" -targettable "Orders" -f "c:\diff_fix.sql" -rc
找不到 tablediff 命令?
很多新手会遇到“'tablediff' 不是内部或外部命令”的报错。这是因为它不在系统的环境变量里,你需要找到它的物理路径来运行。
它通常位于以下目录:
C:\Program Files\Microsoft SQL Server\1xx\COM\tablediff.exe
注意:1xx 代表你的 SQL Server 版本号(如 130 是 2016,140 是 2017,150 是 2019)。
使用方法:
打开 CMD。
先 cd 进入上面的目录。
然后再执行上面的命令。
本文为宁若水!原创文章,转载无需和我联系,但请注明来自[若水]博客 www.lalaya.net
