首页 > 解决方案 > 无法在 FK 约束中找到列名

问题描述

我在雪花中创建了两个表。

create or replace TRANSIENT TABLE TESTPARENT (
COL1 NUMBER(38,0) NOT NULL,
COL2 VARCHAR(16777216) NOT NULL,
COL3 VARCHAR(16777216) NOT NULL,
constraint UNIQ_COL3 unique (COL3)
);


create or replace TRANSIENT TABLE TESTCHILD3 (
COL_A NUMBER(38,0) NOT NULL,
COL_B NUMBER(38,0) NOT NULL,
ABCDEF VARCHAR(16777216) NOT NULL,
constraint FKEY_1 foreign key (COL_A, COL_B) references TEST_DB.PUBLIC.TESTPARENT1(COL1,COL2),
constraint FKEY_2 foreign key (ABCDEF) references TEST_DB.PUBLIC.TESTPARENT(COL3)
);

现在我想执行一个查询并查看FKEY_2 FOREIGN KEY Table中涉及的列的名称TESTCHILD3,但似乎没有保留此信息的 DB Table/View。我可以找出列名,UNIQUE KEY & PRIMARY KEY但没有FOREIGN KEYS.

编辑 我已经尝试过INFORMATION_SCHEMA.TABLE_CONSTRAINTS,以及INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS所有其他系统表。没运气。只是DESC TABLE给我一些与和相关的信息CONSTRAINTSCOLUMNS但也FOREIGN KEY CONSTRAINTS缺少信息。

标签: data-warehousesnowflake-cloud-data-platformsnowflake-schema

解决方案


SHOW IMPORTED KEYS IN TABLE <fk_table_name>;


推荐阅读