2013-08-13 5 views
0

У меня есть таблица с именем Contacts with column Заголовок varchar (50). Теперь, в середине разработки, я хочу изменить длину на varchar (100) поля Title. В таблице минут контакты имеют более 25 зависимостей (другие таблицы, функции просмотра). Когда я запускаю следующую команду sql в SQL Server 2008. Я получаю ошибки.Изменить длину столбца таблицы, которая имеет зависимости

ALTER TABLE [Contacts ] ALTER COLUMN [Title ] varchar(100) 

Ошибка Как

Msg 5074, Level 16, State 1, Line 2 
The object 'Contacts_title' is dependent on column 'title'. 

И еще.

+0

вы проверили HTTP : //support.microsoft.com/kb/816755 – MrSimpleMind

+0

Попробуйте сделать это с помощью конструктора SSMS. Я бы редко это предлагал, но в таком случае он сгенерирует сценарий для удаления и воссоздания зависимых объектов (ограничений, индексов). –

ответ

0

Вы должны удалить зависимость, а затем создать ее снова.

+0

Rodrigo Я знаю это, но есть ли инструкция sql сделать это –

1

вы должны отбросить это воссоздать ограничения целостности на Contact столе, чтобы сделать это, или (иногда на самом деле не рекомендуется), вы можете временно отключить Constrain, изменить длину и включить их снова

--disable all constraints for the Sales.SalesOrderHeader table 
ALTER TABLE [yourtable] NOCHECK CONSTRAINT ALL 

--do your stuff 

--do something --enable all constraints for the Sales.SalesOrderHeader table 
ALTER TABLE [yourtable] CHECK CONSTRAINT ALL 
Смежные вопросы