CONSTRAINT_COLUMN_USAGE 视图

CONSTRAINT_COLUMN_USAGE 视图包含限制条件使用的所有列。对于 PRIMARY KEY 限制条件,这些是 KEY_COLUMN_USAGE 视图中的列。对于 FOREIGN KEY 限制条件,这些是被引用表的列。

架构

INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE 视图具有如下架构:

列名 数据类型

TABLE_CATALOG

STRING

包含数据集的项目的名称。

TABLE_SCHEMA

STRING

包含表的数据集的名称,也称为 datasetId

TABLE_NAME

STRING

表的名称,也称为 tableId

COLUMN_NAME

STRING

列名称。

CONSTRAINT_CATALOG

STRING

限制条件项目名称。

CONSTRAINT_SCHEMA

STRING

限制条件数据集名称。

CONSTRAINT_NAME

STRING

限制条件名称。如果列由主键使用,则为主键的名称;如果列由外键使用,则为外键的名称。

范围和语法

针对此视图的查询必须包括数据集限定符。对于包含数据集限定符的查询,您必须拥有数据集的权限。如需了解详情,请参阅语法。下表展示了此视图的区域和资源范围:

视图名称 资源范围 区域范围
[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:可选。您的 Cloud 项目的名称。如果未指定,则此命令会使用默认项目。
  • 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 |
+-----------------------------+