이름을 모르고 SQL 기본 제약 조건 삭제
SQL Server에서는 특히 이름이 다음과 같은 경우 기본 제약 조건을 식별하고 삭제하는 것이 어려울 수 있습니다. 알 수 없거나 일관성이 없습니다. 이 문제를 해결하기 위해 동적 쿼리 생성을 사용하여 기본 제약 조건을 효과적으로 식별하고 제거할 수 있습니다.
확장 답변:
Mitch Wheat가 공유한 스크립트를 확장하면 더 많은 포괄적인 접근 방식에는 DROP CONSTRAINT 명령을 동적으로 생성하고 실행하는 것이 포함됩니다. 작동 방식은 다음과 같습니다.
declare @schema_name nvarchar(256) declare @table_name nvarchar(256) declare @col_name nvarchar(256) declare @Command nvarchar(1000) set @schema_name = N'MySchema' set @table_name = N'Department' set @col_name = N'ModifiedDate' select @Command = 'ALTER TABLE ' + @schema_name + '.[' + @table_name + '] DROP CONSTRAINT ' + d.name from sys.tables t join sys.default_constraints d on d.parent_object_id = t.object_id join sys.columns c on c.object_id = t.object_id and c.column_id = d.parent_column_id where t.name = @table_name and t.schema_id = schema_id(@schema_name) and c.name = @col_name --print @Command execute (@Command)
설명:
이점:
위 내용은 이름을 모르고 SQL 기본 제약 조건을 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!