SQL Serverで制約の名前を変更することはできますか?この制約は他の既存の制約に影響を与え、それらを再作成/変更する必要があるため、新しい制約を削除して作成する必要はありません。
sp_rename を使用して名前を変更できます@objtype = 'OBJECT'
これは、制約を含むsys.objectsにリストされているオブジェクトで機能します
さらに掘り下げた後、実際にこの形式にする必要があることがわかりました。
EXEC sp_rename N'schema.MyIOldConstraint', N'MyNewConstraint', N'OBJECT'
sp_rename を使用できます。
sp_rename 'CK_Ax', 'CK_Ax1'
答えは本当です:
exec sp_rename
@objname = 'Old_Constraint',
@newname = 'New_Constraint',
@objtype = 'object'
私はこれが古い質問であることを知っていますが、他の素晴らしい答えに加えて、次のことが非常に役立つことがわかりました。
名前を変更する制約にピリオド(ドット)が含まれている場合は、次のように角括弧で囲む必要があります。
sp_rename 'schema.[Name.With.Period.In.It]', 'New.Name.With.Period.In.It'