KEY_COLUMN_USAGE
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本 仅 Unity Catalog
重要
此功能目前以公共预览版提供。
INFORMATION_SCHEMA.KEY_COLUMN_USAGE 会列出目录中主键或外键约束的列。
返回的行仅限于对表的约束,具体取决于用户权限。
定义
KEY_COLUMN_USAGE
关系包含以下列:
名称 | 数据类型 | Nullable | 标准 | 描述 |
---|---|---|---|---|
CONSTRAINT_CATALOG |
STRING |
否 | 是 | 包含约束的目录。 |
CONSTRAINT_SCHEMA |
STRING |
否 | 是 | 包含约束的架构。 |
CONSTRAINT_NAME |
STRING |
否 | 是 | 约束的名称。 |
TABLE_CATALOG |
STRING |
否 | 是 | 包含表的目录。 |
TABLE_SCHEMA |
STRING |
否 | 是 | 包含表的架构。 |
TABLE_NAME |
STRING |
否 | 是 | 在其中定义约束的表的名称。 |
COLUMN_NAME |
STRING |
否 | 是 | 列的名称。 |
ORDINAL_POSITION |
INTEGER |
否 | 是 | 键中列的位置(从 1 开始)。 |
POSITION_IN_UNIQUE_CONSTRAINT |
INTEGER |
是 | 是 | 对于外键,为父唯一键约束或主键约束中列的位置(从 1 开始),否则为 NULL 。 |
约束
以下约束适用于 KEY_COLUMN_USAGE
关系:
类 | 名称 | 列列表 | 描述 |
---|---|---|---|
主密钥 | KEY_COL_USG_PK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, COLUMN_NAME |
唯一标识关系。 |
唯一键 | KEY_COL_USG_OP_UK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, ORDINAL_POSITION |
唯一标识关系。 |
唯一键 | KEY_COL_USG_PIUK_UK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, POSITION_IN_UNIQUE_CONSTRAINT |
唯一标识关系。 |
外键 | KEY_COL_USG_COLUMNS_FK |
TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME |
引用 COLUMNS。 |
外键 | KEY_COL_USG_TAB_CONS_FK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME |
引用 TABLE_CONSTRAINTS。 |
示例
> SELECT constraint_name, column_name
FROM information_schema.key_column_usage
WHERE table_schema = 'information_schema'
AND table_name = 'tables';