Не мога да повярвам, че най-добрият отговор седи тук толкова дълго - това е много опасен съвет!
Има няколко операции, които можете да извършвате на място, без да изпускате таблицата си:
- Разгъване на колона varchar https://dba.stackexchange.com/ questions/5211/changing-column-width
- Направете колона nullable (но не обратното)
- Преименуване на колони чрез sp_rename
Ако попаднете в ситуация, в която промяната на колона не е възможна без премахване на таблицата, обикновено можете да използвате SELECT INTO
заявка, за да проектирате вашите данни в нова таблица, след това изтрийте старата таблица (временно деактивирайки ограниченията) и след това преименувайте проектираната таблица. В този случай обаче ще трябва да оставите базата си данни офлайн за поддръжка.