Можно ли переименовать ограничение в SQL Server? Я не хочу удалять и создавать новый, потому что это ограничение влияет на другие уже существующие ограничения, и мне придется их воссоздать/изменить.
Переименовать ограничение в SQL Server?
Ответ 1
Вы можете переименовать с помощью sp_rename с помощью @objtype = 'OBJECT'
Это работает с объектами, перечисленными в sys.objects, которые включают ограничения
Ответ 2
Вы можете использовать sp_rename.
sp_rename 'CK_Ax', 'CK_Ax1'
Ответ 3
После некоторого дополнительного копания я обнаружил, что он должен быть в этой форме:
EXEC sp_rename N'schema.MyIOldConstraint', N'MyNewConstraint', N'OBJECT'
Ответ 4
Ответ верен:
exec sp_rename
@objname = 'Old_Constraint',
@newname = 'New_Constraint',
@objtype = 'object'
Ответ 5
Я знаю, что это старый вопрос, но я просто нашел следующее, чтобы быть очень полезным, в дополнение к другим отличным ответам:
Если ограничение, которое нужно переименовать, имеет период в нем (точка), тогда вам нужно заключить его в квадратные скобки, например:
sp_rename 'schema.[Name.With.Period.In.It]', 'New.Name.With.Period.In.It'