Altering a column with indexes
![anna.p](https://us.v-cdn.net/6029854/uploads/defaultavatar/nZUSABQN8JEE0.jpg)
Hi there,
I compared two tables that were identical except for a changed datatype on ColumnA and some indexes, one of which accessed ColumnA - we'll call it IDX_ColumnA. My goal was to sync the datatype of ColumnA and nothing else. I turned off the "Indexes" option hoping it wouldn't attempt to sync them.
Here's what I wanted the script to do:
ALTER COLUMN ColumnA
CREATE INDEX IDX_ColumnA
Instead, what it included was DROP INDEX statements for all those that existed in the target but not the source, and then the ALTER COLUMN.
Is there any way I can achieve what I want?
I compared two tables that were identical except for a changed datatype on ColumnA and some indexes, one of which accessed ColumnA - we'll call it IDX_ColumnA. My goal was to sync the datatype of ColumnA and nothing else. I turned off the "Indexes" option hoping it wouldn't attempt to sync them.
Here's what I wanted the script to do:
-
DROP INDEX
ALTER COLUMN ColumnA
CREATE INDEX IDX_ColumnA
Instead, what it included was DROP INDEX statements for all those that existed in the target but not the source, and then the ALTER COLUMN.
Is there any way I can achieve what I want?
Comments
SQL Compare only drops indexes when it absolutely needs to allow SQL Server to accept the changes. Without knowing the schema I can't say why the indexes are being dropped in your case. So there may not be an option that you can set to avoid it.