Нужны шаги для изменения таблицы - PullRequest
0 голосов
/ 21 января 2010

Всякий раз, когда я изменяю структуру таблицы в SSMS, появляется предупреждение:

сохранение изменений не разрешено. Изменения, внесенные вами в следующие таблицы, должны быть удалены и созданы заново.

Ответы [ 2 ]

2 голосов
/ 21 января 2010

Некоторые изменения приводят к удалению и воссозданию таблицы. Одним из таких примеров является добавление столбца в середину таблицы, а не в конец.

Вы можете сделать одну из двух вещей:

Вариант 1

Используйте TSQL для внесения изменений и добавьте столбец в конец (или эквивалентную опцию без удаления таблицы для вашего конкретного редактирования)

Вариант 2

Изменить поведение SSMS по умолчанию (предупреждение - это очень опасная вещь в производственных средах)

Откройте SQL Server 2008 Management Studio (SSMS). В меню перейдите в Инструменты / Параметры. На панели навигации разверните «Дизайнеры» и выберите «Дизайнеры таблиц и баз данных».

В разделе «Параметры таблицы» снимите флажок «Запретить сохранение изменений, для которых требуется пересоздание таблицы» и нажмите кнопку «ОК».

0 голосов
/ 21 января 2010

Я видел такие сообщения, которые чаще всего появляются, когда вносимые вами изменения могут потенциально вызывать усечение данных. Итак, если бы вы меняли nvarchar (20) на nvarchar (10), это произойдет. Неважно, содержит ли столбец только данные длиной 2 символа, он смотрит только на тип данных. Могут быть и другие причины и другие разновидности этого сообщения, но в основном они следуют той же причине: если изменение приведет к тому, что таблица будет более ограничена в данных, которые она может хранить, она хочет провести радикальную операцию.

...