CONSTRAINT_COLUMN_USAGE 뷰
CONSTRAINT_COLUMN_USAGE
뷰에는 제약조건에 사용되는 모든 열이 포함됩니다.
PRIMARY KEY
제약조건의 경우 KEY_COLUMN_USAGE
뷰의 열입니다. FOREIGN KEY
제약조건의 경우 참조된 테이블의 열입니다.
스키마
INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE
뷰에는 다음과 같은 스키마가 있습니다.
열 이름 | 데이터 유형 | 값 |
---|---|---|
|
|
데이터 세트가 포함된 프로젝트의 이름입니다. |
|
|
테이블이 포함된 데이터 세트의 이름(또는 datasetId 라고 함)입니다. |
|
|
테이블 이름(또는 tableId 라고 함)입니다. |
|
|
열 이름입니다. |
|
|
제약조건 프로젝트 이름입니다. |
|
|
제약조건 데이터 세트 이름입니다. |
|
|
제약조건 이름입니다. 열이 기본 키에서 사용되는 경우 기본 키의 이름 또는 외래 키가 열이 사용되는 경우 외래 키의 이름일 수 있습니다. |
범위 및 구문
이 뷰에 대한 쿼리에는 데이터 세트 한정자가 있어야 합니다. 데이터 세트 한정자가 있는 쿼리에는 데이터 세트에 대한 권한이 있어야 합니다. 자세한 내용은 구문을 참조하세요. 다음 표에서는 이 뷰의 리전 범위와 리소스 범위를 보여줍니다.
뷰 이름 | 리소스 범위 | 리전 범위 |
---|---|---|
[PROJECT_ID.]DATASET.INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE; |
데이터 세트 수준 | 데이터 세트 위치 |
- (선택사항)
PROJECT_ID
: Google Cloud 프로젝트의 ID입니다. 지정하지 않으면 기본 프로젝트가 사용됩니다.
예시
다음 쿼리는 데이터 세트에서 단일 테이블의 제약조건을 보여줍니다.
SELECT * FROM PROJECT_ID.DATASET.INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE WHERE table_name = TABLE;
다음을 바꿉니다.
PROJECT_ID
: 선택사항. 클라우드 프로젝트의 이름입니다. 지정하지 않으면 이 명령어는 기본 프로젝트를 사용합니다.DATASET
: 데이터 세트의 이름TABLE
: 테이블의 이름
반대로 다음 쿼리는 단일 데이터 세트의 모든 테이블에 대한 제약조건을 보여줍니다.
SELECT * FROM PROJECT_ID.DATASET.INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE;
기존 제약조건을 사용할 경우 쿼리 결과는 다음과 유사합니다.
+-----+---------------------+--------------+------------+-------------+---------------------+-------------------+-------------------------+ | row | table_catalog | table_schema | table_name | column_name | constraint_catalog | constraint_schema | constraint_name | +-----+---------------------+--------------+------------+-------------+---------------------+-------------------+-------------------------+ | 1 | myConstraintCatalog | myDataset | orders | o_okey | myConstraintCatalog | myDataset | orders.pk$ | | 2 | myConstraintCatalog | myDataset | orders | o_okey | myConstraintCatalog | myDataset | lineitem.lineitem_order | +-----+---------------------+--------------+------------+-------------+---------------------+-------------------+-------------------------+
테이블 또는 데이터 세트에 제약조건이 없는 경우 쿼리 결과는 다음과 같습니다.
+-----------------------------+ | There is no data to display | +-----------------------------+