@echo off REM Objective: To compare results of a query on two different server REM Created by: MAK REM Date: Oct 2, 2004 Echo ... Echo ... Echo ... REM Check parameters if "%1"=="" Goto noparmErr if "%1"=="/?" Goto Help REM assign variables set server1=%1 set login1=%2 set pwd1=%3 set server2=%4 set login2=%5 set pwd2=%6 set Query=%7 set LogFile=%8 set outfile1="C:\Compare\Outfile1.txt" set outfile2="C:\Compare\Outfile2.txt" set DiffFile="C:\Compare\DiffFile.txt" Echo "Compare Query results started" >%LogFile% date/t >> %LogFile% time/t >> %LogFile% Echo .... >> %LogFile% Echo Attempting to delete %outfile1% >> %LogFile% IF EXIST %outfile1% (del /Q %outfile1% ) ELSE echo %outfile1% not found. Skipping delete. Echo Delete process Completed >> %LogFile% Echo .... >> %LogFile% Echo Attempting to delete %outfile2% >> %LogFile% IF EXIST %outfile2% (del /Q %outfile2% ) ELSE echo %outfile2% not found. Skipping delete. Echo Delete process Completed >> %LogFile% Echo .... >> %LogFile% Echo Attempting to delete %DiffFile% >> %LogFile% IF EXIST %DiffFile% (del /Q %DiffFile% ) ELSE echo %DiffFile% not found. Skipping delete. Echo Delete process Completed >> %LogFile% Echo .... >> %LogFile% :BCP1 Echo .... >> %LogFile% Echo "Attempting to BCP out the given query from the server :: %Server1%" >> %LogFile% bcp.exe %Query% QUERYOUT %outfile1% -S%server1% -U%login1% -P%pwd1% -c >>%LogFile% :BCP2 Echo .... >> %LogFile% Echo "Attempting to BCP out the given query from the server :: %Server2%" >> %LogFile% bcp.exe %Query% QUERYOUT %outfile2% -S%server2% -U%login2% -P%pwd2% -c >>%LogFile% :Compare Echo "Comparing %outfile1% and %outfile2% " >> %LogFile% Fc.exe %outfile1% %outfile2% > %DiffFile% :Search Echo "Finding the difference" >> %LogFile% find.exe "FC: no differences encountered" %DiffFile% >> %LogFile% if "%errorlevel%"=="0" echo "Both results are same. Check the file %DiffFile% for differences and Log file %LogFIle%" if "%errorlevel%"=="1" echo "Results are differnt. Check the file %DiffFile% for differences" Goto END :noparmErr Echo No Parameters specified..... Usage example as follows echo ... Echo %0 Server1 Login1 Password1 Server2 login2 password2 "select top 10 * from master..sysobjects" x.txt Goto END :Help Echo Usage help: example as follows echo ... Echo Objective: To compare results of a query on two different server Echo Created by: MAK Echo %0 Server1 Login1 Password1 Server2 login2 password2 "select top 10 * from master..sysobjects" x.txt Goto END :END Echo "Compare Query results Completed" >>%LogFile% date/t >> %LogFile% time/t >> %LogFile%