我使用tablediff
实用程序将数据从serval数据库源转移到目标数据库,我得到的结果包含源数据库和目标数据库之间的所有差异
Dest. Only N'1027' N'799' N'91443' N'1'
Mismatch N'103A' N'799' N'13010' N'1' DATE_CURRENT DATE_OPERATION MATRICULE_UTILISATEUR QTE QTE_FINAL QTE_INIT QTE_OPERATION REFERENCE_DOCUMENT TYPE_DOCUMENT
Src. Only N'103A' N'310' N'30129' N'1'
所以生成的sql文件包含delete
Dest. Only
行,update
Mismatch
行和insert
Src. Only
行
我的问题是:有没有办法使用tablediff
来获得Mismatch
和Src. Only
行的结果?
答案 0 :(得分:4)
在tablediff
工具命令的末尾添加以下内容
-dt -et DiffResults
它将删除名为DiffResults
的现有表,并在目标服务器和数据库中创建一个新表。
然后,您可以查询DiffResults
表以获取所需的行。
在我的测试中,我运行以下
SELECT * FROM DiffResults
WHERE MSdifftool_ErrorDescription in ('Mismatch','Src. Only')
或
SELECT * FROM DiffResults
WHERE MSdifftool_ErrorCode in (0,2) -- 0 is for 'Mismatch'; 1 is for 'Dest. Only' and 2 is for 'Src. Only'
可以在此处找到更多详细信息 - https://technet.microsoft.com/en-us/library/ms162843.aspx
答案 1 :(得分:0)
如果要使用命令行的结果,可以使用findstr:
管道输出foo = Perceptron()