LINKS
General
Apex SQL Audit
Apex SQL Clean
Apex SQL Code
Apex SQL Data Diff
Apex SQL Debug
Apex SQL Diff
Apex SQL Diff API
Apex SQL Doc
Apex SQL Edit
Apex SQL Enforce
Apex SQL Log
Apex SQL Log API
Apex SQL Recover
Apex SQL Refactor
Apex SQL Report
Apex SQL Script
Apex SQL Source Ctl
Apex SQL SSIS Compare
Knowledgebase Home
Apex SQL Audit
Apex SQL Clean
Apex SQL Code
Apex SQL Data Diff
Apex SQL Debug
Apex SQL Diff
Apex SQL Diff API
Apex SQL Doc
Apex SQL Edit
Apex SQL Enforce
Apex SQL Log
Apex SQL Log API
Apex SQL Recover
Apex SQL Refactor
Apex SQL Report
Apex SQL Script
Apex SQL Source Ctl
Apex SQL SSIS Compare
Knowledgebase Home
SITE FEED
Support Forum
FAQs
Troubleshooting
Online Documentation
|
ApexSQL Knowledgebase Tips and How-to Articles for Apex SQL Tools Using project files and selection profiles in CLI DESCRIPTION This article describes what is stored within project files and selection profiles and main techniques of their usage from command line based on ApexSQL Diff application. SOLUTION What are .axds files? .axds files are XML project files for the ApexSQL Diff database structure comparison and synchronization tool. These files are keeping all project information that can be categorized like: • Source and destination database strings • All comparison and syncing instructions for the project • Object selection types • Object selection filters • Objects selected (per object type) • Owner’s mappings and other… What do I use .axds files for? The main purpose of usage the project files is storing there all your preferred settings: comparison, synchronization, owner/schema mapping and others. Having such a file it’s enough to specify in CLI to get the same result as you would get working with the same project in GUI: apexsqldiff.com /pf:your_project.axds Another technique when using the project file in CLI is overriding some of the stored settings by explicitly specified switches. For example, you want to compare 2 different database pairs using the same comparison settings, all you need to do is to override connection settings stored in the project: apexsqldiff.com /pf:your_project.axds /s1:server1 /s2:server2 /d1:database1 /d2:database2 apexsqldiff.com /pf:your_project.axds /sn1:snapshot1.axsnp /s2:server1 /d2:database3 This way you will compare different data sources using the same comparison settings. In addition to this you can change object type selection or whatever comparison option you want: apexsqldiff.com /pf:your_project.axds /sn1:snapshot1.axsnp /s2:server1 /d2:database3 /so:UseTransaction /ita:IgnoreCollations In the above example /so:UseTransaction switch will include transactions into the final synchronization script and /ita:IgnoreCollations switch will suppress differences in table collations. What are .axsp files? .axsp files are XML profiles of object selections, subparts of .axds files, and they can keep the info what objects types and object filters have been selected for comparison/synchronization and what objects in particular have been selected for comparison/synchronization. What do I use .axsp file for? You can save your current objects selection using the exporting feature from the project wizard. .axsp files are used to save particular object selections. Typically you may have single project with specific comparison/synchronizing instructions, and many different .axsp files ready for import in order to specify objects for comparison/synchronization (what will be compared/synchronized). How to use .axsp from CLI? Take this syntax for example: apexsqldiff.com /pf:your_project.axds /i:your_selection.axsp This way the object selection made in the project file will be overridden by the selection profile specified in /i switch because our main standard is that all explicitly specified switches must override information stored within the project file used in /pf switch. Over the time my database grows with new objects. Will the new objects be considered for comparison/synchronization if I am using the same project file? It depends whether you use filters or not, and what switches you are using from CLI if you are working in console mode. For example, let us consider tables (object type table). If you are not using filters (Use Filter feature) and you have checked tables for comparison ![]() then all the tables that are new will be considered for comparison. And if you are using object filters (Use Filter box is checked) then you must explicitly check tables that are to be compared like this: ![]() New tables appeared after you have saved the project file will not be added to the comparison list unless you check them explicitly (saving the project file after that) and this ensures that only desired objects (tables in the example) will be compared/synchronized. But even if you selected only certain tables for comparison using Use Filter feature, in CLI you may easily override this setting using /o switch that points out what object types are to be compared/synchronized. Example of using /o switch: apexsqldiff.com /pf:your_project.axds /o:8 /o switch will override all project selections regarding tables (in ApexSQL Diff the constant “8” corresponds to tables), and the newly added tables will be considered for comparison/synchronization. AUTHOR Dejan Batanjac LAST REVIEW DATE 21 October 2008 Labels: Apex SQL Diff |
© 2010 Apex SQL Tools All Rights Reserved | 1.919.968.8444 | Contact Us | Terms of Use | Privacy Policy


