The reason for SSMS to go unresponsive is that when some operations (i.e. adding column, changing datatype of any column, etc) happen, it has to do much more work than the actual operation. Let us now examine an operation where we will add a new column to an already existing table.
- Transaction starts.
- When a new column is added SSMS renames the existing table to temp table.
- After that, it creates a new table with new specification.
- Now, SSMS has two tables: copy of previous table with data and empty table with new structure.
- SSMS now starts moving older data from older table to newer table.
- If there is any error, it rolls back transaction.
- If there is no error, it commits all the previous operations.
- Transaction ends.
This feature can be turned off by going to Menu >> Tools >> Options >> Designers >> Uncheck “Prevent Saving changes that