Competition: What’s your favorite Redgate tool? Enter now.

IgnoreConstraintNames to ignore default unnamed constraints

bbilowbbilow Posts: 4
edited February 9, 2012 1:05PM in SQL Compare Previous Versions
Hi, I have several default and unique constraints that were unnamed when they were created. by default SQL Server seems to assign them a hash name which causes conflicts when using sql compare.
I tried using IgnoreConstraintNames within my command line script but that didn't work. SqlCompare shows a difference like the example below.
UQ__cont__F43B3D3 - UQ__cont__42CB6785

Is there a way to force the constraint name to be the same hash name as before?

Comments

  • You can specify an actual name for the constraint (e.g. 'col1 CONSTRAINT unique_constraint_x UNIQUE' instead of just 'col1 UNIQUE') when creating the constraint, but there's no global way to force SQL Server to change its automatic naming scheme.

    IgnoreConstraintNames ought to have ignored constraint names during comparison (i.e. it won't flag the table as different if the only difference is the constraint name), but if there is another difference on the table then it will attempt to synchronize the constraint name when it synchronizes the table.

    If you don't care what the constraint name is, this ought to be harmless (as it should also update any references to that constraint with the new name if you've included dependencies).
    Software Developer
    Redgate Software
Sign In or Register to comment.