DROP RULE(Transact-SQL)
적용 대상: SQL Server
Azure SQL Managed Instance
현재 데이터베이스에서 하나 이상의 사용자 정의 규칙을 제거합니다.
Important
DROP RULE
는 이후 버전의 SQL Server에서 제거됩니다. 새 개발 작업에는 사용하지 DROP RULE
말고 현재 사용하는 애플리케이션을 수정할 계획입니다. 대신 CREATE TABLE 또는 ALTER TABLE 키워드를 사용하여 만들 수 있는 CHECK
제약 조건을 사용합니다CHECK
. 자세한 내용은 Unique Constraints and Check Constraints을 참조하세요.
Syntax
DROP RULE [ IF EXISTS ] { [ schema_name . ] rule_name } [ , ...n ]
[ ; ]
참고 항목
SQL Server 2014(12.x) 이전 버전의 Transact-SQL 구문을 보려면 이전 버전 설명서를 참조하세요.
인수
IF EXISTS
적용 대상: SQL Server 2016(13.x) 이상 버전
이미 있는 경우에만 역할을 조건부로 삭제합니다.
schema_name
규칙이 속한 스키마의 이름입니다.
rule
제거할 규칙입니다. 규칙 이름은 식별자에 적용되는 규칙을 준수해야 합니다. 규칙 스키마 이름을 지정하는 것은 선택 사항입니다.
설명
현재 규칙이 열이나 별칭 데이터 형식에 바인딩된 경우 규칙을 삭제하려면 먼저 언바인딩해야 합니다. 규칙을 바인딩 해제하려면 .를 사용합니다 sp_unbindrule
. 규칙을 삭제하려고 할 때 규칙이 바인딩되면 오류 메시지가 표시되고 DROP RULE
문이 취소됩니다.
규칙을 삭제한 후 이전에 규칙이 적용되었던 열에 새 데이터를 입력하면 해당 규칙의 제약 조건에 구애 받지 않고 입력됩니다. 기존 데이터는 어떤 방식으로도 영향을 받지 않습니다.
이 문은 DROP RULE
제약 조건에 CHECK
적용되지 않습니다. 제약 조건을 삭제 CHECK
하는 방법에 대한 자세한 내용은 ALTER TABLE을 참조 하세요.
사용 권한
실행 DROP RULE
하려면 최소한 사용자에게 규칙이 속한 스키마에 대한 권한이 있어야 합니다 ALTER
.
예제
다음 예에서는 VendorID_rule
이라는 규칙을 언바인딩한 후 삭제합니다.
EXEC sp_unbindrule 'Production.ProductVendor.VendorID';
DROP RULE VendorID_rule;