Несогласованный сценарий создания изменений - PullRequest
0 голосов
/ 12 ноября 2009

Я добавляю столбец типа tinyint и настраиваю его на запрет пустых значений в таблице и генерирую сценарии изменений. В данный момент в таблице есть данные. В скрипте есть код, который создает временную таблицу и вставляет в нее данные из текущей таблицы. Затем он удаляет старую таблицу и переименовывает эту временную таблицу в то же имя, что и исходная таблица. Все хорошо и хорошо. У меня вопрос: почему, если я делаю то же самое с другой таблицей (тем же полем, но с другой таблицей), сценарий создания изменений не включает этот новый код вставки таблицы?

Любые советы будут с благодарностью!

1 Ответ

2 голосов
/ 12 ноября 2009

Если таблица не содержит данных, нет необходимости перестраивать таблицу. По сути, Management Studio «осторожно» скрывается за сценой, генерируя сценарий таким образом, если считает, что не может этого сделать, просто изменив таблицу. По моему опыту, он часто делает это, когда в этом нет особой необходимости, однако есть исключения ... например, если вы добавляете столбец , а не в конце таблицы. Вместо того, чтобы вносить изменения в пользовательский интерфейс и создавать сценарии, я рекомендую ознакомиться с командой ALTER TABLE. Подобное восстановление таблицы может привести к катастрофическим последствиям в производственной системе, и обычно этого можно избежать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...