CHECK 제약 조건 만들기
적용 대상:SQL ServerAzure SQL 데이터베이스Azure SQL Managed Instance
테이블에 CHECK 제약 조건을 만들어 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server의 하나 이상의 열에서 허용되는 데이터 값을 지정할 수 있습니다. 열 제약 조건을 추가하는 방법에 대한 자세한 내용은 ALTER TABLE column_constraint를 참조하세요.
자세한 내용은 Unique Constraints and Check Constraints을 참조하세요.
설명
기존 검사 제약 조건을 쿼리하려면 sys.check_constraints 시스템 카탈로그 뷰를 사용합니다.
권한
테이블에 대한 ALTER 권한이 필요합니다.
SQL Server Management Studio 사용
새 CHECK 제약 조건을 만들기
개체 탐색기에서 CHECK 제약 조건을 추가하려는 테이블을 확장하고, 제약 조건을 마우스 오른쪽 단추로 클릭한 후 새 제약 조건을 선택합니다.
CHECK 제약 조건 대화 상자에서 식 필드를 선택한 후 줄임표(...)를 선택합니다.
CHECK 제약 조건 식 대화 상자에서 CHECK 제약 조건에 대한 SQL 식을 입력합니다. 예를 들어
Product
테이블SellEndDate
열의 항목을SellStartDate
열의 날짜보다 크거나 같은 값으로 또는 NULL 값으로 제한하려면 다음을 입력합니다.SellEndDate >= SellStartDate OR SellEndDate IS NULL
또는
zip
열의 항목이 다섯 자리 숫자가 되도록 하려면 다음을 입력합니다.zip LIKE '[0-9][0-9][0-9][0-9][0-9]'
참고 항목
숫자가 아닌 제약 조건 값을 작은따옴표(')로 묶어야 합니다.
확인을 선택합니다.
ID 범주에서 CHECK 제약 조건 이름을 변경하고 제약 조건에 대한 설명(확장 속성)을 추가할 수 있습니다.
테이블 디자이너 범주에서 제약 조건이 적용되는 시기를 설정할 수 있습니다.
다음으로 변경: 다음 필드에서 예 선택 제약 조건을 만들기 전에 존재했던 데이터에 대한 제약 조건 테스트 만들거나 사용하도록 설정할 때 기존 데이터 검사 이 테이블에서 복제 작업이 수행될 때마다 제약 조건 적용 복제에 적용 이 테이블의 행을 삽입하거나 업데이트할 때마다 제약 조건 적용 INSERT 및 UPDATE에 적용 닫기를 선택합니다.
Transact-SQL 사용
새 CHECK 제약 조건을 만들기
개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.
표준 도구 모음에서 새 쿼리를 선택합니다.
다음 예제를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다.
먼저, 제약 조건을 만듭니다.
ALTER TABLE dbo.DocExc ADD ColumnD int NULL CONSTRAINT CHK_ColumnD_DocExc CHECK (ColumnD > 10 AND ColumnD < 50); GO
제약 조건을 테스트하려면 우선 CHECK 제약 조건을 전달할 값을 추가합니다.
INSERT INTO dbo.DocExc (ColumnD) VALUES (49);
다음으로, CHECK 제약 조건에 실패하는 값을 추가해 봅니다.
INSERT INTO dbo.DocExc (ColumnD) VALUES (55);
참고 항목
다음 단계
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기