SQL Compare 15

Permissions required to use SQL Compare


The permissions you need to compare databases are:

Recommended permissionsMinimum permissions  Permissions if you want to compare
encrypted objects

db_owner role

SELECT for the system view sys.sql_expression_dependencies
(without this permission, comparing databases can be very slow)


sysadmin role


For deployments, we recommend using the db_owner role. However, it's possible to deploy with just the permissions to make the changes listed in the Summary tab (on the Review page of the deployment wizard).

Exactly which permissions you need depends on the objects in your databases, and what you're deploying. db_ddladmin can run any Data Definition Language (DDL) and might be an option instead of db_owner .  (If you are working with SQL Data Compare too, you'll want db_datareader and db_writer too.)

You can't deploy objects if they're encrypted in the source.

Permissions issues

If you don't have the right permissions:

  • Some objects may be missing from the comparison results.
    For example, User Defined Types don't appear in the comparison results if you don't have permission to view the schema they belong to.
  • Deployments and deployment scripts may fail or have unexpected results.
    If a deployment fails, SQL Compare attempts to roll back the changes, using transactions. However, in some circumstances, rolling back isn't possible. 

Didn't find what you were looking for?