다음을 통해 공유


REFERENTIAL_CONSTRAINTS(Transact-SQL)

현재 데이터베이스의 각 FOREIGN KEY 제약 조건당 하나의 행을 반환합니다. 이 정보 스키마 뷰는 현재 사용자가 사용 권한을 갖고 있는 개체에 대한 정보를 반환합니다.

이러한 뷰에서 정보를 검색하려면 **INFORMATION_SCHEMA.**view_name 형식으로 정규화된 이름을 지정합니다.

열 이름

데이터 형식

설명

CONSTRAINT_CATALOG

nvarchar(128)

제약 조건 한정자입니다.

CONSTRAINT_SCHEMA

nvarchar(128)

제약 조건이 포함된 스키마의 이름입니다.

중요 정보중요
개체의 스키마를 확인하기 위해 INFORMATION_SCHEMA 뷰를 사용하지 마십시오. 개체의 스키마를 확인하는 신뢰할 수 있는 유일한 방법은 sys.objects 카탈로그 뷰를 쿼리하는 것입니다.

CONSTRAINT_NAME

sysname

제약 조건 이름입니다.

UNIQUE_CONSTRAINT_CATALOG

nvarchar(128)

UNIQUE 제약 조건의 한정자입니다.

UNIQUE_CONSTRAINT_SCHEMA

nvarchar(128)

UNIQUE 상수가 포함된 스키마의 이름입니다.

중요 정보중요
개체의 스키마를 확인하기 위해 INFORMATION_SCHEMA 뷰를 사용하지 마십시오. 개체의 스키마를 확인하는 신뢰할 수 있는 유일한 방법은 sys.objects 카탈로그 뷰를 쿼리하는 것입니다.

UNIQUE_CONSTRAINT_NAME

sysname

UNIQUE 제약 조건입니다.

MATCH_OPTION

varchar(7)

참조 제약 일치 조건이며 항상 SIMPLE을 반환합니다. 이는 일치 조건을 정의하지 않음을 의미합니다. 다음 중 하나가 TRUE인 경우에 조건이 일치하는 것으로 간주됩니다.

  • 외래 키 열에서 적어도 하나의 값이 NULL인 경우

  • 외래 키 열의 모든 값이 NULL이 아니며 기본 키 테이블에 키가 일치하는 행이 있는 경우

UPDATE_RULE

varchar(11)

Transact-SQL 문이 현재 제약 조건에서 정의한 참조 무결성을 위반하는 경우에 수행되는 동작입니다.

다음 중 하나를 반환합니다.

  • NO ACTION

  • CASCADE

  • SET NULL

  • SET DEFAULT

현재 제약 조건의 ON UPDATE에 대해 NO ACTION이 지정된 경우에는 제약 조건에서 참조되는 기본 키 업데이트가 외래 키로 전파되지 않습니다. 적어도 하나의 외래 키가 같은 값을 포함하여 기본 키의 해당 업데이트가 참조 무결성을 위반하는 경우 SQL Server는 부모 테이블 및 참조하는 테이블에 대해 어떠한 변경 사항도 적용하지 않습니다. 또한 SQL Server에서 오류가 발생합니다.

현재 제약 조건의 ON UPDATE에 대해 CASCADE가 지정된 경우에는 기본 키 값에 대한 모든 변경 사항이 자동으로 외래 키 값으로 전파됩니다.

DELETE_RULE

varchar(11)

Transact-SQL 문이 현재 제약 조건에서 정의한 참조 무결성을 위반하는 경우에 수행되는 동작입니다.

다음 중 하나를 반환합니다.

  • NO ACTION

  • CASCADE

  • SET NULL

  • SET DEFAULT

현재 제약 조건의 ON DELETE에 대해 NO ACTION이 지정된 경우에는 제약 조건에서 참조되는 기본 키에 대한 삭제가 외래 키로 전파되지 않습니다. 적어도 하나의 외래 키가 같은 값을 포함하여 기본 키의 해당 삭제가 참조 무결성을 위반하는 경우 SQL Server는 부모 테이블 및 참조하는 테이블에 대해 어떠한 변경 사항도 적용하지 않습니다. 또한 SQL Server에서 오류가 발생합니다.

현재 제약 조건의 ON DELETE에 대해 CASCADE가 지정된 경우에는 기본 키 값에 대한 모든 변경 사항이 자동으로 외래 키 값으로 전파됩니다.