updating AllowIdenticalDatabases in XML file
mjharper
Posts: 26
Hi
I am currently moving from SQLCompare 6 to SQLCompare 8. We have a process that runs the xml ArgFile shown below from the command line. Using SQLCompare 6 this returns one line showing whether or not the stored procedure specified in the <include> is the same, different or not in the target database.
When run in SQLCompare 8 this returns all objects that are identical in both databases along with the specified stored procedure (which again maybe the same, different or not in the target database). If I update the <AllowIdenticalDatabases>true</AllowIdenticalDatabases> to <include>identical</include> as recommended I still get this behaviour.
Am I doing something wrong or has the behaviour of allowing identical databases changed so rather than suppressing the error code that is generated when the source and target are identical it now returns all identical objects?
Many thanks,
Matt
XML FILE:
<?xml version="1.0" encoding="UTF-8"?>
<commandline>
<Server1>sourceServer</Server1>
<Database1>sourceDB</Database1>
<server2>targetServer</server2>
<database2>targetDB</database2>
<AllowIdenticalDatabases>true</AllowIdenticalDatabases>
<Options>Default,IgnoreComments</Options>
<include>storedprocedure:\[storedProcToCompare\]</include>
<Report>C:\output.xml</Report>
<ReportType>XML</ReportType>
<force>true</force>
</commandline>
I am currently moving from SQLCompare 6 to SQLCompare 8. We have a process that runs the xml ArgFile shown below from the command line. Using SQLCompare 6 this returns one line showing whether or not the stored procedure specified in the <include> is the same, different or not in the target database.
When run in SQLCompare 8 this returns all objects that are identical in both databases along with the specified stored procedure (which again maybe the same, different or not in the target database). If I update the <AllowIdenticalDatabases>true</AllowIdenticalDatabases> to <include>identical</include> as recommended I still get this behaviour.
Am I doing something wrong or has the behaviour of allowing identical databases changed so rather than suppressing the error code that is generated when the source and target are identical it now returns all identical objects?
Many thanks,
Matt
XML FILE:
<?xml version="1.0" encoding="UTF-8"?>
<commandline>
<Server1>sourceServer</Server1>
<Database1>sourceDB</Database1>
<server2>targetServer</server2>
<database2>targetDB</database2>
<AllowIdenticalDatabases>true</AllowIdenticalDatabases>
<Options>Default,IgnoreComments</Options>
<include>storedprocedure:\[storedProcToCompare\]</include>
<Report>C:\output.xml</Report>
<ReportType>XML</ReportType>
<force>true</force>
</commandline>
Matt
Comments
I think this might be related to command line issue SC-4542 where identical objects are also included in the migration script.
Can you try excluding the identical objects using: <exclude>identical</exclude>
Let me know how this goes.
Thanks for the reply - I tried adding the <exclude>identical</exclude> but that didn't make any difference.
No problem if it's a known issue - I can carry on using version 6 for now. Is there anywhere I can see a list of known issues or someway of knowing if the next verison addresses the issue?
Thanks.
Matt
I will try and reproduce the symptoms and let you know if anything can be done.
The bug is that <include>Identical</include> is case sensitive. Identical needs to have a capital 'I'.
We have a patch that resolves this issue, or you could simply amend your arg file to include the case sensitive value.
If you would like to try the patch version, you can download it from http://www.red-gate.com/messageboard/viewtopic.php?t=9860
I hope this helps.
with <include>Identical</include> and that now works as expected.
Many thanks for your help.
Regards,
Matt
Paul